检测两条路径是否相同

本文关键字:路径 是否 两条 检测 | 更新日期: 2023-09-27 18:00:22

我有两条路径:

''10.11.11.130'FileServer'Folder2'Folder3'
''10.11.11.130'd$'Main'FileServer'Folder2'Folder3'

我想检测两条路径是否相同。

我想要它,因为我正试图将一个文件移动到另一个目录。因此,对于上面的路径,会抛出一个异常。

我知道我可以尝试接球,但还有其他方法吗?

我想过从第二个路径中删除d$'Main,然后进行比较,但这并不总是正确的。。

感谢您的帮助!

检测两条路径是否相同

您可以使用这样的方法来检查是否相等:

public static bool PathsSame(string pth1, string pth2)
{
    string fName = System.IO.Path.GetRandomFileName();
    string fPath = System.IO.Path.Combine(pth1, fName);
    System.IO.File.Create(fPath);
    string nPath = System.IO.Path.Combine(pth2, fName);
    bool same = File.Exists(nPath);
    System.IO.File.Delete(fPath);
    return same;
}

这模拟了检查路径是否相同的行为。您可以创建一个具有唯一名称的文件,并检查它是否存在于其他目录中。然后你可以删除创建的文件,因为它不再需要了。这不是最好的解决方案,但可能已经足够了。

这也不处理可能发生的错误。有关错误处理,请查看以下内容:https://msdn.microsoft.com/en-us/library/vstudio/as2f1fez(v=vs.110).aspx