如何从java.nio.Path获取路径字符串?

用更多信息重写了问题

我有一些使用相对路径创建Path对象的代码,如: Paths.get("..", "folder").resolve("filename") 。 后来,我想从它获取路径字符串“.. \ folder \ filename”(我在Windows上,所以反斜杠)。 当我使用手动编译或从Eclipse运行此代码时,这很好。

但是,当我使用Maven运行它时,它不再起作用了。 toString()方法返回[.., folder, filename]而不是实际的路径字符串。 使用path.normalize()没有帮助。 使用path.toFile().getPath()会返回我正在寻找的东西,但我觉得应该有一个只使用nio.path API的解决方案。

使用:

 Paths.get(...).normalize().toString() 

另一个解决方案是:

 Paths.get(...).toAbsolutePath().toString() 

但是,你会得到奇怪的结果: Paths.get("/tmp", "foo").toString()在这里返回/tmp/foo 。 你的文件系统是什么?