如果我有一个路径/a/b/c/d/e 并且我想从根目录中删除一些路径 - 例如从中删除/a/b/c 以获得/d/e 它在 python 中非常简单:
os.path.relpath("/a/b/c/d/e", "/a/b/c")
问题是如何在java中实现这一点。 到目前为止,我想到的最好的想法是为每个创建一个 Path,创建一个迭代器,在其上循环并创建一个 Path 数组。 然后检查每个数组的大小(上例中的 5 和 3),然后从第 4 个位置重建路径...... 很麻烦..
最佳答案
在 Groovy 中:
def rootPath = new File('/a/b')
def fullPath = new File('/a/b/c/d')
def relPath = new File(root.toURI().relativize(full.toURI()).toString())
关于java - 如何在java或groovy中编写相当于python的os.path.relpath(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60140707/