当我得到像 c:\folder1\a12\somefile.txt 这样的路径时,我想检查文件名是否包含目录 c:\folder1\a1。
上面的文件名应该返回 false。
该代码无权访问有问题的文件系统。它不需要检查文件或文件夹是否存在。只需遵循文件和目录名称约定即可。
如果代码可以处理备用路径分隔符/UNIX 路径,那就太好了。
您可以简单地检查您的文件路径是否以目录路径开头。不要忘记在目录路径后添加分隔符以避免误报
public static bool IsFileBelowDirectory(string fileInfo, string directoryInfo, string separator)
{
var directoryPath = string.Format("{0}{1}"
, directoryInfo
, directoryInfo.EndsWith(separator) ? "": separator);
return fileInfo.StartsWith(directoryPath, StringComparison.OrdinalIgnoreCase);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12891 次 |
| 最近记录: |