我试图检查两个文件路径字符串是否指定了相同的路径。
我们知道Windows中的路径不区分大小写。
Path.GetFullPath(path1).Equals(Path.GetFullPath(path2), StringComparison.CurrentCultureIgnoreCase)
我知道它在Linux上无法正常工作,因为路径 区分大小写。所以我正在搜索路径的平台区分大小写的一些指示。或者对于某些功能,例如Path.Equals
。
答案 0 :(得分:1)
在你的情况下,检查Path.DirectorySeparatorChar
是否等于'/'或'\'可能是最简单的(也是最可靠的),如果它是前者,则调用相同的方法而不使用“IgnoreCase”部分
完整:
if(Path.DirectorySeparatorChar == '/')
{
Path.GetFullPath(path1).Equals(Path.GetFullPath(path2), StringComparison.CurrentCulture);
}
else
{
Path.GetFullPath(path1).Equals(Path.GetFullPath(path2), StringComparison.CurrentCultureIgnoreCase);
}