Microsoft Word는 사용자가 문서를 작성, 편집 및 서식 지정하는 데 사용할 수 있는 널리 사용되는 워드 프로세싱 응용 프로그램입니다. 문서 작업을 할 때 차이점, 개정 또는 업데이트를 식별하기 위해 두 개의 Word 문서를 비교해야 하는 경우가 많습니다. 이번 블로그 게시물에서는 C#에서 Word 문서를 비교하는 방법을 살펴보겠습니다. 또한 Word 문서 비교를 사용자 정의하는 몇 가지 고급 기능에 대해서도 설명합니다.
Word 문서를 비교하는 C# 라이브러리
Aspose.Words for .NET은 C#에서 Word 문서를 생성, 조작 및 변환하기 위한 포괄적인 지원을 제공하는 강력한 라이브러리입니다. 문서 비교를 포함한 다양한 기능을 제공하므로 문서 중심 응용 프로그램을 사용하는 개발자에게 유용한 도구입니다.
NuGet에서 라이브러리를 설치하려면 다음 명령을 사용할 수 있습니다. 또는 다운로드 섹션에서 다운로드할 수 있습니다.
PM> Install-Package Aspose.Words
C#에서 두 개의 Word 문서 비교
Aspose.Words for .NET을 사용하면 Word 문서를 쉽게 비교할 수 있습니다. 문서를 로드하고 비교하고 비교 결과를 얻으세요. Word 문서를 더 자세히 비교하는 데 필요한 단계를 살펴보겠습니다.
- 먼저 각 Word 문서에 대해 Document 클래스의 개체를 만듭니다.
- 문서를 비교하려면 Document.Compare(Document, string, DateTime) 메서드를 호출하세요.
- Document.Revisions.Count 속성을 사용하여 문서가 다른지 확인합니다.
- 마지막으로 Document.Save() 메서드를 사용하여 첫 번째 문서를 저장하여 개정판을 가져옵니다.
다음 코드 조각은 C#에서 두 Word 문서를 비교하는 방법을 보여줍니다.
// 두 Word 문서를 모두 로드합니다.
Document docA = new Document("document1.docx");
Document docB = new Document("document2.docx");
// DocA에는 변경 사항이 개정판으로 포함되어 있습니다.
docA.Compare(docB, "user", DateTime.Now);
if (docA.Revisions.Count == 0)
{
Console.WriteLine("Documents are equal");
}
else
{
Console.WriteLine("Documents are not equal");
docA.Save("results.docx");
}
다음은 비교 결과 스크린샷이다.
고급 Word 문서 비교 옵션
Aspose.Words for .NET은 Word 문서 비교 프로세스를 사용자 정의하기 위해 제공하는 몇 가지 옵션이 있습니다. 예를 들어, 머리글/바닥글, 주석 등을 포함한 특정 섹션을 무시하도록 라이브러리를 구성할 수 있습니다. 또한 세분성 옵션을 설정하여 문자나 단어의 비교 수준을 변경할 수 있습니다. C# 애플리케이션의 Word 문서 비교에서 이러한 옵션을 사용하는 방법을 살펴보겠습니다.
- 먼저 각 Word 문서에 대해 Document 클래스의 개체를 만듭니다.
- 그런 다음 CompareOptions 클래스의 객체를 생성하고 원하는 옵션을 설정합니다.
- Document.Compare(Document, string, DateTime, CompareOptions) 메서드를 호출하여 문서를 비교합니다.
- 마지막으로 Document.Save() 메서드를 사용하여 첫 번째 문서를 저장하여 개정판을 가져옵니다.
다음 코드 조각은 다양한 옵션을 사용하여 Word 문서 비교를 사용자 지정하는 방법을 보여줍니다.
// 두 Word 문서를 모두 로드합니다.
Document docA = new Document("document1.docx");
Document docB = new Document("document2.docx");
// 다양한 비교 옵션을 적용하세요.
CompareOptions compareOptions = new CompareOptions();
compareOptions.IgnoreFormatting = false;
compareOptions.IgnoreCaseChanges = false;
compareOptions.IgnoreComments = false;
compareOptions.IgnoreTables = false;
compareOptions.IgnoreFields = false;
compareOptions.IgnoreFootnotes = false;
compareOptions.IgnoreTextboxes = false;
compareOptions.IgnoreHeadersAndFooters = false;
compareOptions.Target = ComparisonTargetType.New;
// DocA에는 변경 사항이 개정판으로 포함되어 있습니다.
docA.Compare(docB, "user", DateTime.Now, compareOptions);
if (docA.Revisions.Count == 0)
{
Console.WriteLine("Documents are equal");
}
else
{
Console.WriteLine("Documents are not equal");
docA.Save("results.docx");
}
무료 API 라이선스 받기
평가 제한 없이 Aspose.Words for .NET을 사용하려면 임시 라이센스를 취득할 수 있습니다.
결론
Aspose.Words for .NET은 C#에서 Word 문서를 비교하는 프로세스를 단순화합니다. 강력한 기능과 사용하기 쉬운 API를 통해 개발자는 애플리케이션에서 문서 비교 기능을 효율적으로 구현할 수 있습니다. 문서 관리 시스템, 공동 편집 도구 또는 버전 제어 시스템을 구축하는 경우 Aspose.Words for .NET은 문서 비교를 쉽게 처리하는 데 필요한 도구를 제공합니다. 이 블로그에서는 C#에서 두 개의 Word 문서를 비교하는 방법을 배웠습니다. 또한 다양한 옵션을 사용하여 문서 비교 작업을 사용자 정의하는 방법도 논의했습니다.
문서를 사용하여 C#용 Aspose.Words의 다른 기능을 탐색할 수 있습니다. 질문이 있는 경우 포럼을 통해 문의하실 수 있습니다.