문서 비교는 오늘날의 프로그래밍 세계에서 가장 일반적인 요구 사항 중 하나입니다. 워드 파일을 비교하든, 엑셀 파일, PDF 문서를 비교하든, 텍스트 파일이나 다른 문서 형식을 비교하든, 정확성은 비교할 때 핵심 요소입니다.
이 기사에서는 **GroupDocs.Comparison**이 프로그래머가 여러 가지 방법으로 둘 이상의 문서를 비교하는 데 도움이 되는 방법에 대한 아이디어를 제공합니다. 온프레미스 GroupDocs.Comparison의 API는 현재 .NET 및 Java에서 사용할 수 있지만 이 문서는 C# 개발자를 대상으로 합니다.
Excel, Word 파일 또는 C#의 모든 문서 비교
GroupDocs.Comparison를 사용하면 개발자가 두 문서를 비교할 수 있습니다(사실상 2개 이상. 결과 문서는 두 파일 간의 변경 사항을 비교하여 보여줍니다. 아래에 언급된 코드는 두 개의 Excel 파일을 비교하는 방법을 보여줍니다. C#에서 단 3줄의 코드로.
using (Comparer comparer = new Comparer(“source.xlsx”))
{
comparer.Add(“target.xlsx”);
comparer.Compare(“result.xlsx”);
}
Excel 스프레드시트 또는 Microsoft Word 문서를 비교하는 것은 GroupDocs.Comparison의 .NET API에서 지원하는 비교 하위 집합에 불과합니다. 다음은 지원되는 형식 목록입니다. 문서를 방문하여 최신 정보를 확인할 수 있습니다.
문서 유형 | 파일 형식 |
---|---|
워드 프로세싱 | DOC, DOCX, DOCM, DOT, DOTX, DOTM, RTF, TXT |
스프레드시트 | XLS, XLSX, XLSM, XLT, XLTM, XLSB, XLSM, CSV |
프레젠테이션 | PPT, PPTX, PPS, PPSX, POT, POTX |
오픈도큐먼트 | ODT, ODP, OTP, ODS, OTT |
Microsoft Visio 드로잉 | VSD, VSDX, VSS, VST, VDX |
휴대용 | |
메모 작성 | ONE |
웹 | HTM, HTML, MHT, MHTML |
전자책 | MOBI |
이미지 | BMP, GIF, JPG, JPEG, PNG, DICOM, DJVU, DWG, DXF |
이메일 | EML, EMLX, MSG |
C#에서 둘 이상의 스프레드시트 또는 OneNote 문서 비교
.NET 20.2용 GroupDocs.Comparison 릴리스 이후 API는 이제 다음을 지원합니다.
- 2개 이상의 Microsoft Excel 및 OpenOffice 스프레드시트 비교(XLS, XLSX, ODS, CSV, …)
- 여러 Microsoft OneNote 문서를 비교합니다.
API는 이미 다양한 문서 형식에 대한 여러 파일의 비교를 지원합니다. 다음 코드 조각은 C#에서 여러 Excel 파일을 얼마나 빠르게 비교할 수 있는지 보여줍니다.
using (Comparer comparer = new Comparer(“source.xlsx”)
{
comparer.Add(“target1.xlsx”);
comparer.Add(“target2.xlsx”);
comparer.Add(“target3.xlsx”);
comparer.Compare(“result.xlsx”);
}
C#의 스트림에서 문서 비교
프로그래머는 로컬 저장소에서 사용할 수 있는 문서를 비교할 수 있을 뿐만 아니라 실제로 스트림에서 문서를 비교할 수도 있습니다.
using (Comparer comparer = new Comparer(File.OpenRead(“source.docx”))
{
comparer.Add(File.OpenRead(“target1.docx”));
comparer.Add(File.OpenRead(“target2.docx”));
comparer.Add(File.OpenRead(“target3.docx”));
comparer.Compare(File.Create(“result.docx”));
}
C#에서 암호로 보호된 Word 문서/Excel 스프레드시트 비교
암호 보호는 공식 문서에서 일반적입니다. 문서 비교 .NET API를 사용하여 사용자/개발자가 암호로 보호된 문서를 비교할 수 있습니다.
암호로 보호되지 않은 문서를 비교하기 위한 코드와 비교하여 코드가 약간만 변경되었습니다. 문서를 로드하는 동안 LoadOptions를 사용하여 문서 암호를 지정합니다. 다음은 도움을 위한 샘플 비교 코드입니다.
using (Comparer comparer = new Comparer("source.docx", new LoadOptions() { Password = "1234" }))
{
comparer.Add("target1.docx", new LoadOptions() { Password = "5678" });
comparer.Add("target2.docx", new LoadOptions() { Password = "5678" });
comparer.Add("target3.docx", new LoadOptions() { Password = "5678" });
comparer.Compare("result.docx");
}
특정 설정의 문서 비교
비교하기 한 단계 앞서 아래에 언급된 것과 유사한 코드를 사용하여 사용자 정의된 비교 설정으로 여러 문서를 비교할 수 있습니다.
CompareOptions는 감지된 변경 사항 등에 대한 글꼴 스타일 지정과 같은 비교 옵션을 지정할 수 있는 기회를 제공합니다.
using (Comparer comparer = new Comparer(“source.docx”)
{
comparer.Add(“target1.docx”);
comparer.Add(“target2.docx”);
comparer.Add(“target3.docx”);
CompareOptions compareOptions = new CompareOptions()
{
InsertedItemStyle = new StyleSettings()
{
FontColor = System.Drawing.Color.Yellow
}
};
comparer.Compare(“result.docx”, compareOptions);
}
C#에서 프로그래밍 언어 파일 비교
GroupDocs는 더 많은 파일 형식을 비교할 수 있도록 지원을 지속적으로 확대하고 있습니다. 릴리스 v 20.2 이후에는 이제 .NET API를 사용하여 JSON 파일을 비교할 수도 있습니다. 다음은 지원 문서 형식 목록에 최근에 추가된 프로그래밍 언어 파일 형식입니다.
- 액션스크립트
- 어셈블러
- C 기반
- 씨샤프
- 그루비
- 자바스크립트
- 자바
- JSON
- 객관적인 C/C++
- 펄
- PHP
- 파이썬
- 루비
- 스칼라
- 셸/배치 스크립트, 로그, Diff, 구성, LESS
- SQL
이야기하자
위에서 강조한 기능을 사용하여 고유한 응용 프로그램을 구축할 수 있습니다. 포럼에 연락하여 토론하거나 문제를 해결하거나 피드백을 공유해 주시면 기쁠 것입니다.