Java 1.6-确定符号链接
在DirectoryWalker类中,我想确定File实例是否实际上是指向目录的符号链接(假设Walker在UNIX系统上行走)。给定,我已经知道实例是一个目录,以下是否是确定符号链接的可靠条件?
File file;// ...
if (file.getAbsolutePath().equals(file.getCanonicalPath())) {
// real directory ---> do normal stuff
}
else {
// possible symbolic link ---> do link stuff
}
回答:
这是Apache代码(根据其许可证使用),为了紧凑而进行了修改。
public static boolean isSymlink(File file) throws IOException { if (file == null)
throw new NullPointerException("File must not be null");
File canon;
if (file.getParent() == null) {
canon = file;
} else {
File canonDir = file.getParentFile().getCanonicalFile();
canon = new File(canonDir, file.getName());
}
return !canon.getCanonicalFile().equals(canon.getAbsoluteFile());
}
以上是 Java 1.6-确定符号链接 的全部内容, 来源链接: utcz.com/qa/407952.html