Java Nio相对路径的绝对路径

jos*_*t91 6 java nio

我有一个指向磁盘上文件的路径,比如说:C:\folder\dir\dir2\file.txt.在代码中,如果在处理此文件时抛出异常,它将输出整个路径.理想情况下,不打印整个目录就好了../../dir2/file.txt.

看起来我应该能够使用这种java.nio.file relativize方法,我只是不确定如何.

Path file; // C:\folder\dir\di2\file.txt
file.relativize(file.getParent());
Run Code Online (Sandbox Code Playgroud)

我正在以错误的方式接近这个我敢肯定,只是不肯定如何完成我想要的.

Sot*_*lis 10

获取当前的工作目录

Path pwd = Paths.get("").toAbsolutePath();
Run Code Online (Sandbox Code Playgroud)

然后relativize是目标Path

Path relative = pwd.relativize(target);
Run Code Online (Sandbox Code Playgroud)