getPath()方法返回一个相对路径,而getAbsolutePath()方法返回一个绝对路径。
getPath()方法返回的是相对于当前工作目录的路径,如果构造File对象时使用的是相对路径,则getPath()返回的就是相对路径;如果构造File对象时使用的是绝对路径,则getPath()返回的就是绝对路径。
getAbsolutePath()方法返回的是文件的绝对路径,无论构造File对象时使用的是相对路径还是绝对路径,getAbsolutePath()都返回的是文件的绝对路径。
举个例子说明:
假设当前工作目录是C:\Users\admin\Documents,有一个文件file.txt在C:\Users\admin\Desktop\test目录下。
使用相对路径构造File对象:
File file = new File(“C:\Users\admin\Desktop\test\file.txt”);
getPath()返回的是相对路径:C:\Users\admin\Desktop\test\file.txt
getAbsolutePath()返回的是绝对路径:C:\Users\admin\Desktop\test\file.txt
使用绝对路径构造File对象:
File file = new File(“file.txt”);
getPath()返回的是相对路径:file.txt
getAbsolutePath()返回的是绝对路径:C:\Users\admin\Documents\file.txt
可以看到,无论是使用相对路径还是绝对路径构造File对象,getPath()返回的都是相对路径,而getAbsolutePath()返回的都是绝对路径。