欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

[NIO.2] 第二十四篇 定位链接所指向的目标文件位置

程序员文章站 2022-03-02 11:20:48
...
调用 Files.readSymbolicLink() 方法可以返回链接所指向的目标文件的 Path 对象。这个方法接受一个 Path 类型的参数,这个参数必须是一个链接,否则会抛出 NotLinkException 异常。

调用 Files.isSameFile() 方法可以判断链接和文件是否指向同一文件。

下面的例子中,链接为 rafael.nadal.6,目标文件是 C:\rafaelnadal\photos\rafa_winner.jpg,随后读取了链接指向的文件位置,并判断了链接是否与文件是否指向同一文件。

Path link = FileSystems.getDefault().getPath("rafael.nadal.6");
Path target = FileSystems.getDefault().getPath("C:/rafaelnadal/photos", "rafa_winner.jpg");
…
try {
    Path linkedpath = Files.readSymbolicLink(link);
    System.out.println(linkedpath.toString());
    if(Files.isSameFile(link, target)){
        System.out.println("Two paths point to the same location");
    }
} catch (IOException e) {
    System.err.println(e);
} 


文章来源:http://www.aptusource.org/2014/04/nio-2-locating-the-target-of-a-link/
相关标签: Java NIO.2