getPath()方法返回一個相對路徑,而getAbsolutePath()方法返回一個絕對路徑。
getPath()方法返回的是相對于當(dāng)前工作目錄的路徑,如果構(gòu)造File對象時使用的是相對路徑,則getPath()返回的就是相對路徑;如果構(gòu)造File對象時使用的是絕對路徑,則getPath()返回的就是絕對路徑。
getAbsolutePath()方法返回的是文件的絕對路徑,無論構(gòu)造File對象時使用的是相對路徑還是絕對路徑,getAbsolutePath()都返回的是文件的絕對路徑。
舉個例子說明:
假設(shè)當(dāng)前工作目錄是C:\Users\admin\Documents,有一個文件file.txt在C:\Users\admin\Desktop\test目錄下。
使用相對路徑構(gòu)造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
使用絕對路徑構(gòu)造File對象:
File file = new File(“file.txt”);
getPath()返回的是相對路徑:file.txt
getAbsolutePath()返回的是絕對路徑:C:\Users\admin\Documents\file.txt
可以看到,無論是使用相對路徑還是絕對路徑構(gòu)造File對象,getPath()返回的都是相對路徑,而getAbsolutePath()返回的都是絕對路徑。