JAVA中获取文件路径的方式(根据自己理解的方式)
来源:互联网 发布:鬼吹灯故事解析 知乎 编辑:程序博客网 时间:2024/06/17 15:08
这几天在看Java8的Core Java的时候,跟着书中的例子写了一些测试,第一句就错了!
String contents = new String(Files.readAllBytes(Paths.get("test.txt")), StandardCharsets.UTF_8);我在class 根目录下添加了一个文件test.txt,在运行上面语句的时候提示错误,找不到该文件,那肯定是因为路径不对了。后面我又尝试了其他的路径形式:
1. /test.txt
2. \test.txt
.......
最终我使用了该文件的决定路径,但是在正式的开发中总不能就用绝对路径吧,坑!!!
Java总会有方式能定位项目中的某个文件吧,所以一番百度、谷歌后,有了自己的结论:
Java获取文件路径的方式还是多种多样的,有的获取项目的根目录,有的是class文件的根目录,还有直接定位到类的目录,下面就根据这些分类来展示一下相应的方法
1. 获取项目根目录
1). System.out.println(System.getProperty("user.dir")); // path = E:\xxxx\xxxx\proj
System.out.println(new File("").getCanonicalPath()); // path = /E:\xxxx\xxxx\proj
2.获取class文件的根目录
1). System.out.println(MainTest.class.getClassLoader().getResource(".").getPath()); // path = E:\xxxx\xxxx\proj\target\classes
System.out.println(MainTest.class.getResource("/").getPath()); // path = E:\xxxx\xxxx\proj\target\classes
-- 路径前加了一个/,不知道何用,如果通过Paths.get(path)方法使用该path直接报非法路径,当然我们可以通过字符串处理的方式来达到目的,也可以通过new File(path).getAbsolutePath()的方式处理获取路径
3.获取class类的目录
1).System.out.println(MainTest.class.getResource("").getPath());
通过上面集中方式可以应对大部分文件的读取了,在上面获取倒的目录下根据自己项目的文件结构定位到相应的文件就可以了。
- JAVA中获取文件路径的方式(根据自己理解的方式)
- java中获取文件路径的几种方式
- java中获取文件路径的几种方式
- java中获取文件路径的几种方式
- java中获取文件路径的几种方式
- java中获取文件路径的几种方式
- Java中获取文件路径的几种方式
- Java中获取文件路径的几种方式
- Java中获取文件路径的几种方式
- java中获取文件路径的几种方式
- 根据路径获取文件的两种方式
- java中获取路径的方式
- JAVA WEB中获取路径的方式
- Java获取文件路径/项目路径的方式
- 获取 路径n中方法和方式 + 文件的读取。。
- java 获取当前文件(项目)路径的多种方式
- 关于java获取文件路径的几种方式
- java文件路径获取方式
- 判断是否是平衡二叉树
- Unity3D 最简单的优化建议
- 如何理解窗口函数
- JS基础学习篇(二)
- Foundations of Git
- JAVA中获取文件路径的方式(根据自己理解的方式)
- 动画资源
- mysql事务,select for update,及数据的一致性处理
- 基于 exoplayer 的 videoview
- c++基础复习之数组与指针
- Xcode 诡异报错xcdatamodel: cdtool cannot compile 和 dyld: Symbol not found: ___NSDictionary0__
- poi修改word文档doc/docx不支持图片
- 新书速递:周立功教授心血新力作《面向AMetal框架与接口的编程(上)》
- SSM框架使用Maven构建环境详细整合教程(Spring+SpringMVC+MyBatis)