如何在Java中合并路径?
System.IO.Path.Combine()在C#/。NET中是否有Java等效项?或任何代码来实现这一目标?
此静态方法将一个或多个字符串组合到路径中
回答:
在Java 7中,你应该使用resolve
:
Path newPath = path.resolve(childPath);
虽然NIO2 Path类对于使用不必要的不同API的File似乎有点多余,但实际上它更优雅,更强大。
请注意,Paths.get()
(根据其他人的建议)并没有带有的重载Path,并且这样做Paths.get(path.toString(), childPath)
与并不相同resolve()
。从Paths.get()
文档:
请注意,尽管此方法非常方便,但使用它将意味着假定对默认FileSystem的引用并限制了调用代码的实用性。因此,不应在旨在灵活重用的库代码中使用它。更为灵活的替代方法是使用现有的Path实例作为锚点,例如:
Path dir = ...Path path = dir.resolve("file");
功能resolve
出色relativize
:
Path childPath = path.relativize(newPath);
以上是 如何在Java中合并路径? 的全部内容, 来源链接: utcz.com/qa/426970.html