GetRelativePath 不正确

GetRelativePath is incorrect

我正在从我的程序输出两个文件,用户配置中提供了路径。

我需要从一个文件引用另一个文件,所以很高兴找到 Path.GetRelativePath 函数,但是,这个:

Path.GetRelativePath("/Users/ben/file1.txt", "/Users/ben/file2.txt")

输出../file2.txt

我不明白这是怎么回事;我希望只是 file2.txt 或更好 ./file2.txt

我在 MacOS 上使用 .net 6.0

这里有很多关于如何使用 Uri 执行此操作的示例,但是有人可以解释为什么这不是我所期望的...

谢谢

感谢@Alexey Larionov(见评论);我只是没有正确阅读 the documentation;它指出“[第一个 属性] 总是被认为是一个目录”。

很容易修复

Path.GetRelativePath(
    Path.GetDirectoryName("/Users/ben/file1.txt"), 
    "/Users/ben/file2.txt")

//returns file2.txt