Java新手问题:文件类中getAbsolutePath()和getcanonicalPath()之间的区别是什么。我无法从文件中得到意义。在下面的代码中,它们的输出是相同的。
public class copyFile {
public static void main(String[] args) throws IOException {
File inputFile = new File("/home/kit.ho/");
System.out.println("get AbsolutePath");
System.out.println(inputFile.getAbsolutePath());
System.out.println("get CanonicalPath");
System.out.println(inputFile.getCanonicalPath());
}
}
答案 0 :(得分:21)
假设/home
实际上是/usr/home
的符号链接。然后getAbsolutePath
仍会返回/home/kit.ho/
,而getCanonicalPath
会解析符号链接并返回/usr/home/kit.ho/
。