• 首页
  • 产品与方案
  • 众成服务
  • 走进众成
  • 新闻中心
  • 企业文化
  • 联系我们
  • 解决方案
  • 众成软件
  • 维护支持
  • 运维服务
  • 技术交流
  • 公司介绍
  • 荣誉资质
  • 合作伙伴
  • 招贤纳士
  • 公司新闻
  • 业界动态
  • 文化建设
  • 企业文化
  • 荣誉榜

首页 > 众成服务 > 技术交流

技术交流

关于Java读取本地文件路径的探究

 作者:众成   文章来源:软件部    点击数:  更新时间:2019-11-01 11:48:10

Eclipse的工作空间路径是:D:\AJavaEE\EclipseWorkSpace,做这个测试的工程名叫PathDemo,jdk版本为1.8。工程的目录层级图如下所示:

 
 
一、利用创建File实例读取文件
 
例1.1 参数传”/”
File fileRoot1 = new File(“/”);
System.out.println(“绝对路径:” + fileRoot1.getAbsolutePath());
System.out.println(“标注路径:” + fileRoot1.getCanonicalPath());
System.out.println(“相对路径:” + fileRoot1.getPath());
控制台打印如下:
绝对路径:D:\
标注路径:D:\
相对路径:\
 
例1.2 参数传”“(空串)
File fileRoot2 = new File(“”);
System.out.println(“绝对路径:” + fileRoot2.getAbsolutePath());
System.out.println(“标注路径:” + fileRoot2.getCanonicalPath());
System.out.println(“相对路径:” + fileRoot2.getPath());
控制台打印如下:
绝对路径:D:\AJavaEE\EclipseWorkSpace\PathDemo
标注路径:D:\AJavaEE\EclipseWorkSpace\PathDemo
相对路径:
 
例1.3 参数传”a.txt”
File fileA = new File(“a.txt”);
System.out.println(“绝对路径:” + fileA.getAbsolutePath() + “,文件是否存在:” + fileA.exists());
System.out.println(“标注路径:” + fileA.getCanonicalPath() + “,文件是否存在:” + fileA.exists());
System.out.println(“相对路径:” + fileA.getPath() + “,文件是否存在:” + fileA.exists());
控制台打印如下:
绝对路径:D:\AJavaEE\EclipseWorkSpace\PathDemo\a.txt,文件是否存在:false
标注路径:D:\AJavaEE\EclipseWorkSpace\PathDemo\a.txt,文件是否存在:false
相对路径:a.txt,文件是否存在:false
 
例1.4 参数传”src/com/study/path/a.txt”
File fileA1 = new File(“src/com/study/path/a.txt”);
System.out.println(“绝对路径:” + fileA1.getAbsolutePath() + “,文件是否存在:” + fileA1.exists());
System.out.println(“标注路径:” + fileA1.getCanonicalPath() + “,文件是否存在:” + fileA1.exists());
System.out.println(“相对路径:” + fileA1.getPath() + “,文件是否存在:” + fileA1.exists());
控制台打印如下:
绝对路径:D:\AJavaEE\EclipseWorkSpace\PathDemo\src\com\study\path\a.txt,文件是否存在:true
标注路径:D:\AJavaEE\EclipseWorkSpace\PathDemo\src\com\study\path\a.txt,文件是否存在:true
相对路径:src\com\study\path\a.txt,文件是否存在:true
 
例1.5 参数传”src/b.txt”
File fileB = new File(“src/b.txt”);
System.out.println(“绝对路径:” + fileB.getAbsolutePath() + “,文件是否存在:” + fileB.exists());
System.out.println(“标注路径:” + fileB.getCanonicalPath() + “,文件是否存在:” + fileB.exists());
System.out.println(“相对路径:” + fileB.getPath() + “,文件是否存在:” + fileB.exists());
控制台打印如下:
绝对路径:D:\AJavaEE\EclipseWorkSpace\PathDemo\src\b.txt,文件是否存在:true
标注路径:D:\AJavaEE\EclipseWorkSpace\PathDemo\src\b.txt,文件是否存在:true
相对路径:src\b.txt,文件是否存在:true
 
例1.6 参数传”c.txt”
File fileC = new File(“c.txt”);
System.out.println(“绝对路径:” + fileC.getAbsolutePath() + “,文件是否存在:” + fileC.exists());
System.out.println(“标注路径:” + fileC.getCanonicalPath() + “,文件是否存在:” + fileC.exists());
System.out.println(“相对路径:” + fileC.getPath() + “,文件是否存在:” + fileC.exists());
控制台打印如下:
绝对路径:D:\AJavaEE\EclipseWorkSpace\PathDemo\c.txt,文件是否存在:true
标注路径:D:\AJavaEE\EclipseWorkSpace\PathDemo\c.txt,文件是否存在:true
相对路径:c.txt,文件是否存在:true
 
二、利用类加载器来读取文件
 
例2.1 参数传”“(空串)
URL resource = PathTest.class.getClassLoader().getResource(“”);
String path = resource.getPath();
System.out.println(path);
控制台打印如下:
/D:/AJavaEE/EclipseWorkSpace/PathDemo/bin/
 
例2.2参数传”com/study/path/a.txt”
URL resource = PathTest.class.getClassLoader().getResource(“com/study/path/a.txt”);
String path = resource.getPath();
System.out.println(path);
控制台打印如下:
/D:/AJavaEE/EclipseWorkSpace/PathDemo/bin/com/study/path/a.txt
————————————————
版权声明:本文为CSDN博主「Duckdan」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Duckdan/article/details/78789163

 
  • 地址:温州市车站大道大诚商厦E幢四楼 | 电话:0577-88891333 | 技术服务电话:4008515159 | 传真:0577-88363999
  • 邮箱:jucher@jucher.com | 浙ICP备05000620号-1
  • Copyright © 2009-2019 JUCHER CORPORATION CO., LTD All Rights Reserve