Ответ 1
Предположим, что /home
фактически была символической ссылкой на /usr/home
. Тогда getAbsolutePath
все равно вернет /home/kit.ho/
, тогда как getCanonicalPath
разрешит символическую ссылку и вернет /usr/home/kit.ho/
.
Вопрос Java Newbie: каковы различия между 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());
}
}
Предположим, что /home
фактически была символической ссылкой на /usr/home
. Тогда getAbsolutePath
все равно вернет /home/kit.ho/
, тогда как getCanonicalPath
разрешит символическую ссылку и вернет /usr/home/kit.ho/
.