我有2个字符串--dir1和dir2,我需要检查一个是否是其他的子目录.我尝试使用Contains方法:
dir1.contains(dir2);
Run Code Online (Sandbox Code Playgroud)
但是如果目录具有相似的名称,例如 - c:\abc并且c:\abc1不是子目录,则返回true也返回true.肯定有更好的办法.
我有2个DirectoryInfo对象,并想检查它们是否指向同一目录.除了比较他们的全名,还有其他更好的方法吗?请忽略链接的情况.
这就是我所拥有的.
DirectoryInfo di1 = new DirectoryInfo(@"c:\temp");
DirectoryInfo di2 = new DirectoryInfo(@"C:\TEMP");
if (di1.FullName.ToUpperInvariant() == di2.FullName.ToUpperInvariant())
{ // they are the same
...
}
Run Code Online (Sandbox Code Playgroud)
谢谢.
我试图确定一条路径是否是另一条路径的子路径。
我已经尝试过:
if (Path.GetFullPath(A).StartsWith(Path.GetFullPath(B)) ||
Path.GetFullPath(B).StartsWith(Path.GetFullPath(A)))
{ /* ... do your magic ... */ }
Run Code Online (Sandbox Code Playgroud)
但它不起作用。例如,如果我写 "C:\files" 和 "C:\files baaa" 代码认为 "C:\files baaa" 是 "C:\files" 的孩子,如果不是,它是只有 C:。当我尝试长路径时,问题真的很严重,有很多孩子。
我也试过“如果包含\”......但仍然没有真正在所有的追逐中工作
我能做什么?
谢谢!