从 Java 中的绝对 URL 获取相对路径
在 Java 中使用路径时,通常需要将绝对路径转换为相对路径尊重指定的基本路径。这可以使用 java.net.URI 类提供的 relativize() 方法来实现。
考虑示例路径:
/var/data/stuff/xyz.dat /var/data
使用后一个路径作为创建相对路径其基础,您可以执行以下操作:
String path = "/var/data/stuff/xyz.dat"; String base = "/var/data"; String relative = new File(base).toURI().relativize(new File(path).toURI()).getPath();
此代码将绝对路径转换为 URI,执行相对化,并且提取结果路径。输出将是:
stuff/xyz.dat
请注意,对于文件路径,Java 1.7 在 java.nio.file.Path 类中引入了 relativize() 方法。如果您正在使用文件路径,则可以利用此方法获得更有效的解决方案。
以上是如何在 Java 中从绝对 URL 获取相对路径?的详细内容。更多信息请关注PHP中文网其他相关文章!