本文介绍如何使用 NET REST API 比较 Word 文档。您将学习使用 .NET 云 SDK 使用 C# Low Code API 比较 Word 文件。完整的程序流程和示例代码可用于在线执行此任务。
先决条件
- 创建账户并获取 API 凭证
- 下载 Aspose.Words Cloud SDK for Dotnet to compare two Word files
- 使用上述 SDK 设置 C# 解决方案项目,用于比较 DOCX 文件
使用 C# Low Code API 比较两个 Word 文档的步骤
- 通过设置克隆的 ID 和密钥来初始化 WordsApi 对象,以比较文档
- 将最新的Word文件读入内存流并上传至云存储
- 创建CompareData对象,并使用上传的文件作为参考
- 将初始 Word 文件读入内存流
- 通过提供初始 Word 文件、更新的 Word 文件和输出文件名来创建 CompareDocumentOnlineRequest 对象
- 调用 CompareDocumentOnline 方法并提供请求对象
- 从响应中下载输出 Word 文件并将其保存在磁盘上
上述步骤描述了如何使用 C# Low Code API 在线比较 Word 文档。首先将最新的 Word 文件上传到云存储,然后使用上传的文档引用创建 CompareData 对象。将原始文件读入内存流,使用上传的 Word 文件、有更改的本地文档和输出 Word 文件创建 CompareDocumentOnlineRequest,最后调用 CompareDocumentOnline() 方法来比较 Word 文件。
使用 NET REST API 在线比较 Word 文档的代码
using System; | |
using System.Collections.Generic; | |
using System.IO; | |
using System.Threading.Tasks; | |
using Aspose.Words.Cloud.Sdk; | |
using Aspose.Words.Cloud.Sdk.Model; | |
using Aspose.Words.Cloud.Sdk.Model.Requests; | |
namespace WordsSample.Words | |
{ | |
public class WordFileOperations | |
{ | |
public void CompareFiles() | |
{ | |
var wordsApi = new WordsApi("Client ID", "Secret"); | |
using var requestFileContent2 = File.OpenRead("Sample2.docx"); | |
var uploadRequest2 = new UploadFileRequest(requestFileContent2, "Sample2.docx"); | |
var task2 = wordsApi.UploadFile(uploadRequest2); | |
task2.Wait(); | |
var requestCompareDataFileReference = new FileReference("Sample2.docx"); | |
var requestCompareData = new CompareData() | |
{ | |
Author = "author", | |
DateTime = new System.DateTime(2015, 10, 26, 0, 0, 0), | |
FileReference = requestCompareDataFileReference | |
}; | |
using var requestDocument = File.OpenRead("Sample1.docx"); | |
string output = "output.docx"; | |
var request = new CompareDocumentOnlineRequest( | |
document: requestDocument, | |
compareData: requestCompareData, | |
destFileName: output | |
); | |
var task = wordsApi.CompareDocumentOnline(request); | |
task.Wait(); | |
var result = task.Result; | |
if (result.Document.TryGetValue(output, out var stream)) | |
{ | |
stream.Position = 0; | |
using (var fileStream = File.Create(output)) | |
{ | |
stream.Seek(0, SeekOrigin.Begin); | |
stream.CopyTo(fileStream); | |
} | |
} | |
} | |
} | |
} |
此代码演示了使用 C# REST API 比较两个 Word 文档之间的差异的过程。此代码显示,首先我们将最新的 Word 文件上传到云存储作为参考,然后在本地读取 Word 文件的先前版本以将其与参考 Word 文件进行比较。在 CompareData 类中,有一个名为 CompareOptions 的属性,它支持比较的自定义,例如忽略大小写更改、注释、字段、脚注、格式、页眉和页脚、表格和文本框。
在本主题中,我们学习了如何比较两个 Word 文件。有关如何删除 Word 文件中的注释,请参阅以下文章:使用 NET REST API 删除 Word DOC 中的注释。