文件路径方法
常用的获取文件路径的方法有:
File.getPath()
File.getAbsolutePath()
File.getCanonicalPath()
相对路径 vs. 绝对路径
如果创建 File 对象时使用的是不包含“.”和“..”的绝对路径字符串表示,那么 3 个方法返回的路径都是相同的。
使用相对路径字符串表示创建的 File 对象,其起始路径跟工作目录有关。
差别
当使用相对路径的字符串表示创建 File 对象,3 个方法的返回值是有部分差异的,下面我们一一说明。
由于是相对路径,所以我们先假设工作目录为 C:/test。
普通相对路径
1 | File file = new File("abc"); |
带“.”的相对路径
1 | File file = new File("."); |
带“..”的相对路径
1 | File file = new File(".."); |
小结
File.getPath()
:返回 File 对象创建时使用的路径字符串。File.getAbsolutePath()
:返回绝对路径字符串,但可能包含“.”或“..”。File.getCanonicalPath()
:返回规范的绝对路径字符串,不会包含“.”和“..”。注意,会抛出 IOException。