我需要标准化文件路径,以便路径的一部分可以通过String.StartsWith(...)
例子:
尽管这两个文件路径是等效的,但公共部分无法通过 方法 进行匹配String.StartsWith(...)
。
我现在知道API方法:Path.NormalizePath(path, true);
可以进行规范化,但不幸的是这个方法是内部受保护的!
为了使文件路径标准化,我还有哪些其他机会?Path.GetFullPath(...)
可能是可选的,但仅适用于绝对文件路径,因为它会为相对文件路径添加一个前缀,例如: C:/ 。
这项工作在.net 2.0下进行
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
var path = @"C:/Common/Dir1/Dir2/file.txt";
var canonicalPath = new Uri(path).LocalPath;
Console.WriteLine(canonicalPath.StartsWith(@"C:\Common\"));
Console.Read();
}
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
654 次 |
最近记录: |