2013-06-23 1 views
0

약간 다른 필드가있는 여러 유형의 파일 (대부분 .txt 및 .xls) 2 개를 읽고 각 줄을 비교하는 프로그램 (C#이 좋음)을 만들어야합니다. 예 : 파일 1 (.txt) : 성 : Smith 이름 : Bill EID : bs223 유형 : 회계 파일 2 (.xls) : 마지막 : smith 첫 번째 : 청구서 EID : bs223 번호 : 5555555 유형 : 회계여러 파일 필드를 비교하는 가장 좋은 방법

파일에는 일부 동일한 필드가 있습니다. 또한 텍스트 파일에는 필드 사이에 많은 공백이 있습니다. 공통 필드를 비교하고 유사점과 차이점을 사용자에게 표시해야합니다. 각 파일의 필드 형식은 일관됩니다.

제 질문은 무엇을하는 것이 최선의 선택일까요? 두 파일을 XML로 변환하고이를 비교하는 것이 현명한 방법일까요? XML을 사용하면 XML이 어떻게 될까요? C#에서 더 나은 방법이 있습니까?

감사합니다.

편집 : 코드 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

에이 .txt로 변환하는 방법? 이것이 한 번 활동 인 경우 두 형식의 파일을 읽고 문자열 비교를 수행 할 것을 제안합니다. 비교하는 동안 공백, 쉼표 및 대소 문자를 무시하십시오.

xml - How would you compare two XML Documents?에 더 관심이있는 경우이 내용을 살펴 보겠습니다. 그러나 내부적으로는 동일한 작업을 수행하며 성능 향상을 기대할 수는 없습니다. 또한 이들 모두를 xml로 변환하려는 노력을 포함해야합니다.

+0

약 1 년 동안 여러 번 (일주일에 한 번 정도) 사용됩니다. 그러나 텍스트 파일을 XML로 변환 할 수 있습니다. 마음에 가지고있는 메서드가 괜찮은 경우 혼란 스럽습니다. 텍스트와 .xls를 xml로 변환하고 필드를 비교할 수 있습니까? – Cassus