Java - 从两个java.nio.Path创建相对java.nio.Path

Jes*_*aro 5 java filepath

我有一个java.nio.Path指向绝对路径:

/home/user/project/resources/configuration.xml
Run Code Online (Sandbox Code Playgroud)

我有第二个java.nio.Path指向项目的根目录,也是一个绝对路径:

/home/user/project
Run Code Online (Sandbox Code Playgroud)

现在是否可以创建一个java.nio.Path保存两者之间的相对路径:

resources/configuration.xml
Run Code Online (Sandbox Code Playgroud)

Mur*_*nik 8

这正是该relativize(Path)方法的作用:

Path confFile = Paths.get("/home/user/project/resources/configuration.xml");
Path rootDir  = Paths.get("/home/user/project");
Path relative = rootDir.relativize(confFile);
Run Code Online (Sandbox Code Playgroud)