在linux中我们可以创建相对的符号链接。
Files.createSymbolicLink(symlink, targetfile);
在java NIO.2中
{{1}}
此代码无法使用相对路径。
答案 0 :(得分:2)
以下是在创建符号链接时提供相对路径的代码,以便在跨平台环境中访问它。
Path source = Paths.get("D:\\A\\B\\C\\D\\E\\F\\G\\a.mp4"); // original file's absolute path
Path link = Paths.get("D:\\A\\B\\C\\D\\E\\F\\H\\I\\a.mp4"); // symbolic link's absolute path
Path relativeSrc = link.getParent().relativize(source); // relative path of original file from symbolic link
link.getParent().toFile().mkdirs(); // create the directory hierarchy if any folder is not available
Files.createSymbolicLink(link, reativeSrc); // create symbolic link.
希望这会有所帮助:)
答案 1 :(得分:1)
Files.createSymbolicLink(destination,targetDirectory。 relativize (targetfile));