C# .NET을 사용하여 CSV 파일 비교

우리는 최근에 .NET 애플리케이션 내에서 두 CSV 파일을 비교하는 기본 방법에 대해 논의했습니다. 오늘 이 기사에서는 C#을 사용하여 둘 이상의 CSV를 비교하는 방법에 대해 자세히 알아보겠습니다. 또한 암호로 보호된 CSV 파일을 비교하는 방법에 대해 설명합니다. 마지막으로 .NET 응용 프로그램 내에서 C#을 사용하여 발견된 변경 사항을 수락하고 거부하는 방법입니다.

다음 주제는 아래에서 다룹니다.

CSV 파일 비교를 위한 .NET API

GroupDocs.Comparison에는 다양한 방법으로 CSV 파일을 비교할 수 있는 .NET API가 있습니다. 이를 사용하여 .NET 응용 프로그램 내에서 CSV 파일을 비교합니다. 또한 두 개 이상의 CSV 파일, 암호로 보호된 파일의 비교를 지원하여 발견된 변경 사항을 수락 및 거부합니다.

다운로드 섹션에서 DLL 또는 MSI 설치 프로그램을 다운로드하거나 NuGet을 통해 해당 패키지를 .NET 애플리케이션에 추가하여 API를 설치할 수 있습니다.

PM> Install-Package GroupDocs.Comparison

기능에 대한 실행 예제는 GitHub에서도 볼 수 있습니다. 지침은 문서API 참조를 참조하세요.

C#을 사용하여 CSV 파일 비교

앞서 두 CSV 파일의 기본 비교에 대해 이미 논의했습니다. 거기에서 파일 비교 C# 소스 코드, 비교를 위한 샘플 입력 파일 및 비교 출력 파일을 살펴보았습니다. 기본적인 비교를 위해 해당 기사를 방문할 수 있습니다.

C#을 사용하여 2개 이상의 CSV 파일 비교

비교할 CSV 파일이 2개 이상인 경우 걱정할 필요가 없습니다. 두 파일을 비교하는 것만 큼 간단합니다. 세 번째 파일을 비교기에 추가하기만 하면 됩니다.

다음은 C#을 사용하여 2개 이상의 CSV 파일을 비교하는 단계입니다.

  • 비교할 첫 번째 CSV 파일로 Comparer 클래스를 인스턴스화합니다.
  • 적절한 Add 메서드를 사용하여 두 번째 CSV 파일을 추가합니다.
  • 마찬가지로 Add 메서드를 사용하여 다른 CSV 파일을 최대한 추가합니다.
  • 마지막으로 Compare 메서드를 호출하여 추가된 모든 CSV 파일의 비교 결과를 가져옵니다.

다음 C# 소스 코드는 여러 CSV 파일을 비교하고 비교 결과를 별도의 CSV 및 HTML 파일로 생성합니다. HTML 출력 파일은 변경 사항을 다양한 색상으로 강조 표시합니다.

// C#을 사용하여 여러(2개 이상) CSV 파일 비교

using (Comparer comparer = new Comparer("path/comma-separated-file-1.csv"))
{
    // 비교할 여러 CSV 파일 추가
    comparer.Add("path/comma-separated-file-2.csv");
    comparer.Add("path/comma-separated-file-3.csv");
    // ...
    // ...
    comparer.Compare("path/comparison-result.csv");
}

C#을 사용하여 암호로 보호된 CSV 파일 비교

CSV 파일이 암호로 보호되어 있는 경우 이러한 파일을 로드하는 동안 암호를 제공하기만 하면 됩니다. 비밀번호로 보호된 여러 CSV 파일을 비교하는 나머지 절차에는 차이가 없습니다.

다음은 C#을 사용하여 암호로 보호된 CSV 파일을 비교하는 단계입니다.

  • LoadOptions 클래스를 사용하고 CSV 파일을 여는 비밀번호를 설정하여 로딩 옵션을 준비합니다.
  • Comparer 클래스를 인스턴스화하는 동안 비교할 첫 번째 CSV 파일을 로드합니다.
  • 적절한 Add 메서드를 사용하여 두 번째 CSV 파일을 추가합니다.
  • 마찬가지로 Add 메서드를 사용하여 다른 CSV 파일을 최대한 추가합니다.
  • 마지막으로 Compare 메서드를 호출하여 추가된 모든 CSV 파일의 비교를 가져옵니다.

다음 C# 소스 코드는 암호로 보호된 여러 CSV 파일을 비교하고 비교 결과를 별도의 CSV 및 HTML 파일로 생성합니다.

// C#을 사용하여 암호로 보호된 CSV(쉼표로 구분된 값) 파일 비교

using (Comparer comparer = new Comparer("path/comma-separated-file-1.csv", new LoadOptions(){ Password = "file1-password" }))
{
    comparer.Add("path/comma-separated-file-2.csv", new LoadOptions(){ Password = "file2-password" });
    comparer.Compare("path/comparison-result.csv");
}

C#을 사용하여 CSV 파일의 식별된 변경 수락 또는 거부

Microsoft Word의 기능과 마찬가지로 .NET 응용 프로그램 내에서 CSV 파일에 대한 변경 내용 추적 옵션을 구현할 수 있습니다. 파일 비교 후에 식별된 각 변경 사항을 수락하거나 거부할 수 있습니다. 다음은 CSV 파일을 비교한 다음 식별된 변경 사항을 수락하거나 거부하는 단계입니다.

  • Comparer 클래스를 사용하여 소스를 로드하고 대상 CSV 파일을 추가합니다.
  • Compare 메서드를 사용하여 로드된 파일의 비교를 수행합니다.
  • GetChanges 메서드를 사용하여 식별된 변경 사항을 가져옵니다.
  • 이제 변경 사항을 탐색하고 각 변경 사항의 ComparisonAction을 설정할 수 있습니다.
    • 동의한 변경 사항에 대해 수락으로 설정할 수 있습니다.
    • 동의하지 않는 변경 사항의 경우 거부로 설정할 수 있습니다.
  • 마지막으로 ApplyChanges 메서드를 호출하여 변경 사항이 적용된 결과 문서를 가져옵니다.

다음 C# 소스 코드는 두 CSV 파일을 비교한 다음 그에 따라 변경 사항을 수락 및 거부합니다.

/*
 * C#을 사용하여 CSV 파일을 비교하여 식별된 변경 사항 수락 또는 거부
 */
using (Comparer comparer = new Comparer("path/comma-separated-file-1.csv"))
{
    comparer.Add("path/comma-separated-file-2.csv");
    comparer.Compare();
    ChangeInfo[] changes = comparer.GetChanges();
    
    // 첫 번째 변경을 거부하고 두 번째 확인된 변경을 수락합니다.
    changes[0].ComparisonAction = ComparisonAction.Reject;
    changes[1].ComparisonAction = ComparisonAction.Accept;
    comparer.ApplyChanges("path/track-changes-result.csv", new ApplyChangeOptions { Changes = changes, SaveOriginalState = true });
}

무료 API 라이선스 받기

평가 제한 없이 API를 사용하기 위해 무료 임시 라이선스를 얻을 수 있습니다.

결론

요약하자면, 오늘 우리는 C#을 사용하여 둘 이상의 CSV 파일을 비교하는 방법을 배웠습니다. 암호로 보호된 CSV 파일의 비교와 함께 .NET 응용 프로그램 내에서 식별된 변경 사항을 프로그래밍 방식으로 수락 및 거부하는 방법을 배웠습니다.

비교 감도 설정, 요약 페이지만 표시, 간격 무시 등과 같이 비교 결과를 제어하기 위한 많은 다른 사용자 정의가 있습니다. 문서에서 이러한 기능에 대해 알아보세요.

다양한 지원되는 문서 형식에 대한 고유한 비교 응용 프로그램 구축을 시작할 수 있습니다. 문의 사항은 포럼을 통해 문의해 주세요.

또한보십시오