文档比较是当今编程世界最常见的要求之一。无论是比较word文件、比较excel文件、PDF文档,还是比较文本文件或任何其他文档格式,准确性都是比较的关键因素。
本文将向您介绍 GroupDocs.Comparison 如何帮助程序员以多种方式比较任何两个或多个文档。 On-Premise GroupDocs.Comparison 的 API 目前可用于 .NET 和 Java,但是,本文倾向于 C# 开发人员。
比较 Excel、Word 文件或 C# 中的任何文档
GroupDocs.Comparison 允许开发人员比较两个文档(实际上超过 2 个。生成的文档显示了比较两个文件之间的变化。下面提到的代码显示了如何比较两个 excel 文件只需 3 行 C# 代码。
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 现在支持:
- 两个以上 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 的
- 夏普
- 時髦的
- JavaScript
- 爪哇
- JSON
- 目標 C/C++
- Perl
- PHP
- Python
- 紅寶石
- 斯卡拉
- Shell/批處理腳本、日誌、差異、配置、LESS
- SQL
让我们谈谈
您可以使用上面突出显示的功能构建自己的应用程序。如果您在 论坛 上与我们联系以讨论、解决问题或分享您的反馈,我们将非常高兴。