符号链接包含对另一个文件或目录的引用。符号链接引用的文件称为符号链接的目标文件。符号链接上的操作对应用程序是透明的。可以使用java.nio.file.Files
类处理符号链接。
isSymbolicLink(Path p)
方法检查指定路径指定的文件是否是符号链接。Files
类的createSymbolicLink()
方法(可能不是在所有平台上都支持)创建符号链接。
import java.nio.file.Files
import java.nio.file.Path
import java.nio.file.Paths
public class Main {
public static void main(String[] args) throws Exception {
Path existingFilePath = Paths.get("C:\\Java_Dev\\test1.txt")
Path symLinkPath = Paths.get("C:\\test1_link.txt")
Files.createSymbolicLink(symLinkPath, existingFilePath)
}
}
默认情况下,Java NIO API遵循符号链接。我们可以指定是否要遵循符号链接。使用枚举常量LinkOption
来指示不遵循符号链接的选项 - NOFOLLOW_LINKS
。
LinkOption
枚举在java.nio.file
包中声明。支持此选项的方法可传递LinkOption
类型的参数。
可以使用Files
类的createLink(Path newLink,Path existingPath)
方法来创建硬链接。