C# 比较多个文件字段的最佳方法

C# 比较多个文件字段的最佳方法,c#,xml,file,compare,xls,C#,Xml,File,Compare,Xls,我需要创建一个程序(最好是C#),它读取两个不同类型的文件(很可能是.txt和.xls),其中的字段稍有不同,并比较每一行。例如: 文件1(.txt):姓氏:史密斯姓氏:比尔EID:bs223类型:会计 文件2(.xls):最后一个:史密斯第一个:比尔EID:bs223编号:555类型:会计 这些文件有一些相同的字段,一些不同的字段。此外,文本文件的字段之间将有许多空格。我需要比较公共字段,并向用户显示相同点和不同点。每个文件中字段的格式将保持一致 我的问题是,这样做的最佳选择是什么?将这两个文

我需要创建一个程序(最好是C#),它读取两个不同类型的文件(很可能是.txt和.xls),其中的字段稍有不同,并比较每一行。例如: 文件1(.txt):姓氏:史密斯姓氏:比尔EID:bs223类型:会计 文件2(.xls):最后一个:史密斯第一个:比尔EID:bs223编号:555类型:会计

这些文件有一些相同的字段,一些不同的字段。此外,文本文件的字段之间将有许多空格。我需要比较公共字段,并向用户显示相同点和不同点。每个文件中字段的格式将保持一致

我的问题是,这样做的最佳选择是什么?将这两个文件转换为XML并进行比较是否明智?如果我使用XML,它将如何进入等式?C#中有更好的方法吗

谢谢

编辑: 将.txt转换为XML的代码

public static void Main() {
  XElement root = new XElement("root");
  foreach (String ln in File.ReadAllLines(@"input.txt")){
            string[] fields = ln.Split(' '); 
            XElement record = new XElement("record");
            int pos = 0;
            foreach (String sp in fields){
              if(sp != ""){
                pos += 1;
                XElement field = new XElement(string.Format("field_{0}", 
                pos.ToString()));
                field.Add(sp);
                record.Add(field);
                         }
                 }
            root.Add(record); 
            }
            Console.Write (root.ToString());
          }

你需要多久做一次这个练习?如果这是一次性活动,我建议您可以以两个文件的格式读取它们,并只执行字符串比较。在进行比较时,请确保忽略空格、逗号和大小写


如果您对xml更感兴趣的话,请看一下这个,但这在内部也起到了同样的作用,我怀疑它是否会给您带来任何性能改进。此外,您还需要将这两种格式转换为xml。

您能展示一下您目前所做的尝试吗?StackOverflow是来帮助解决你遇到的特定编程问题的,不是当老师或者为你做这些工作。我不是要代码。我要求的是一种方法。它将被多次使用(一周一次左右),持续大约一年。我可以将文本文件转换为XML,但是,我只是对我想到的方法是否合适感到困惑:将文本和.xls都转换为XML,然后比较类似的字段?