我想删除许多文件路径中的额外空格,因为正在审查的文件路径相当长。
例如,我有这个文件路径:
C:\TEST Filepath\TEST Filepath\TEST Filepath\..\File.doc
并希望它变成:
C:\TEST Filepath\TEST Filepath\..\File.doc
我有数百个像这样的文件路径,想知道是否有一种快速有效的方法可以从它们中删除额外的空间?
非常感谢。
尝试在备用磁盘上使用一小部分。请小心。
void RemoveExtraSpace(string sourceDir)
{
var filePaths = Directory.GetDirectories(sourceDir, "*.*", SearchOption.AllDirectories);
Regex rx = new Regex(@"\s\s+");
for(int x = filePaths.Length - 1; x >= 0; x--)
{
string cur = filePaths[x];
DirectoryInfo di = new DirectoryInfo(cur);
if(rx.IsMatch(di.Name))
{
string result = Regex.Replace(di.Name, @"\s\s+", " ");
result = Path.Combine(di.Parent.FullName, result);
Directory.Move(di.FullName, result);
}
}
}