给定一个包含两个不同扩展名但名称相同的文件列表的目录(例如,a.xml
有一个a.out
伴随它的文件),我如何找到没有.out 文件的 XML 文件?我仅限于 Windows 环境,只能使用 Visual Studio。
问问题
612 次
1 回答
0
我用下面的 c# 代码弄明白了。最后,代码可能会更短一些,但它的速度足以满足我的需求并且运行良好。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
namespace OrderFinder
{
class Program
{
static void Main(string[] args)
{
string SearchDir = @"Y:\imported";
string SearchExp = "*.xml";
string MustHave = "{xmlfile}.out";
string name, find;
try
{
foreach (var file in Directory.EnumerateFiles(SearchDir, SearchExp, SearchOption.TopDirectoryOnly))
{
name = file.Substring(SearchDir.Length + 1);
find = SearchDir + "\\" + MustHave.Replace("{xmlfile}", Path.GetFileNameWithoutExtension(file));
if (!File.Exists(find))
{
Console.WriteLine("[WARN] Mismatched: " + Path.GetFileNameWithoutExtension(file));
}
}
}
catch (Exception ex)
{
Console.WriteLine("[ERR] Exception: " + ex.Message);
}
Console.ReadLine();
}
}
}
于 2014-08-21T20:05:01.460 回答