使用更多信息重写问题
我有一些使用相对路径创建Path
对象的代码,如下所示:Paths.get("..", "folder").resolve("filename")
。稍后,我想从其中获取路径字符串"..\folder\filename“(我在windows上,所以使用反斜杠)。当我使用手动编译或从Eclipse运行这段代码时,它工作得很好。
但是,当我使用Maven运行它时,它不再工作。toString()
方法返回[.., folder, filename]
,而不是实际的路径字符串。使用path.normalize()
无济于事。使用path.toFile().getPath()
确实会得到我想要的结果,但我觉得应该有一个只使用nio.path
应用程序接口的解决方案。
发布于 2013-07-09 23:37:03
使用:
Paths.get(...).normalize().toString()
另一种解决方案是:
Paths.get(...).toAbsolutePath().toString()
但是,您会得到奇怪的结果:Paths.get("/tmp", "foo").toString()
在这里返回/tmp/foo
。您的文件系统是什么?
https://stackoverflow.com/questions/17552299
复制相似问题