Java Nio绝对路径到相对路径

Java Nio绝对路径到相对路径,java,nio,Java,Nio,我有一个指向磁盘上文件的路径,比如:C:\folder\dir\dir2\file.txt。在代码中,如果处理此文件时引发异常,它将输出整个路径。理想情况下,最好不要打印整个目录,而是像。/../dir2/file.txt 似乎我应该能够用这种方法来解决这个问题,我只是不知道如何解决 Path file; // C:\folder\dir\di2\file.txt file.relativize(file.getParent()); 我肯定是用了错误的方法,只是不确定如何实现我想要的。获取当前

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

似乎我应该能够用这种方法来解决这个问题,我只是不知道如何解决

Path file; // C:\folder\dir\di2\file.txt
file.relativize(file.getParent());

我肯定是用了错误的方法,只是不确定如何实现我想要的。

获取当前的工作目录

Path pwd = Paths.get("").toAbsolutePath();
然后
相对化
目标
路径

Path relative = pwd.relativize(target);

我在同一个问题上失败了,但得到的错误是格式为:[smallpath].relativize[longpath]->file..getParent().relativize(file);