2013-06-23 73 views
0

我需要創建一個程序(最好在C#中),它讀取2個不同類型(最可能是.txt和.xls)的文件,並且字段略有不同,並比較每一行。例如: 文件1(.txt):姓氏:Smith名字:Bill EID:bs223類型:會計 文件2(.xls):最後:smith第一:帳單EID:bs223號碼:5555555類型:會計比較多個文件字段的最佳方法

這些文件有一些相同的字段,有些不同。而且,文本文件在字段之間將有很多空格。我需要比較常見字段並向用戶顯示相似性和差異性。每個文件中的字段格式將保持一致。

我的問題是,這樣做最好的選擇是什麼?將兩個文件轉換爲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()); 
      } 
+0

你能證明你到目前爲止嘗試過嗎? StackOverflow可以幫助您解決特定的編程問題,而不是擔任教師或爲您工作。 –

+0

我不是要求代碼。我正在尋求一種方法。 – Cassus

回答

0

你怎麼經常需要做這個練習?如果這是一次性活動,我建議您可以按照它們所在的格式讀取這兩個文件,只需執行字符串比較。在做比較時,一定要忽略空格,逗號和套管。

看看這一個如果更關注xml - How would you compare two XML Documents?,但內部做同樣的事情,我懷疑會給你任何性能改進。而且你還需要包括你的努力將它們都轉換爲xml。

+0

它將被使用多次(每週一次)大約一年。我可以將文本文件轉換爲XML,但是,我只是困惑,如果我腦海中的方法是一個體面的:將文本和.xls轉換爲XML,並比較像字段? – Cassus

相關問題