温馨提示×

getPath()与getAbsolutePath()的区别是什么

小云
242
2023-08-05 17:53:57
栏目: 编程语言

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()返回的都是绝对路径。

0