Сравнение документов Word с помощью NET REST API

В этой статье описывается, как сравнивать документы Word с помощью NET REST API. Вы научитесь сравнивать файлы Word с C# Low Code API с помощью облачного SDK .NET. Полный текст программы и пример кода доступны для выполнения этой задачи онлайн.

Обязательное условие

Шаги: сравнение двух документов Word с API C# Low Code

  1. Инициализируйте объект WordsApi, задав клонированный идентификатор и секрет для сравнения документов.
  2. Считайте последний файл Word в поток памяти и загрузите его в облачное хранилище.
  3. Создайте объект CompareData и используйте загруженный файл в качестве ссылки.
  4. Считайте исходный файл Word в поток памяти.
  5. Создайте объект CompareDocumentOnlineRequest, указав исходный файл Word, обновленный файл Word и имя выходного файла.
  6. Вызовите метод CompareDocumentOnline и предоставьте объект запроса.
  7. Загрузите выходной файл Word из ответа и сохраните его на диске.

Вышеуказанные шаги описывают, как сравнивать документы Word в Интернете с C# Low Code API. Начните процесс с загрузки последней версии файла Word в облачное хранилище, а затем создайте объект CompareData, используя ссылку на загруженный документ. Считайте исходный файл в поток памяти, создайте CompareDocumentOnlineRequest с загруженным файлом Word, локальным документом с изменениями и выходным файлом Word и, наконец, вызовите метод CompareDocumentOnline() для сравнения файлов Word.

Код для сравнения документов Word в Интернете с помощью NET REST API

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);
}
}
}
}
}

Этот код демонстрирует процесс сравнения различий между двумя документами Word с помощью C# REST API. Этот код показывает, что сначала мы загружаем последний файл Word в облачное хранилище в качестве эталонного и читаем предыдущую версию файла Word локально, чтобы сравнить ее с эталонным файлом Word. В классе CompareData есть свойство CompareOptions, которое поддерживает настройку сравнения, например игнорирование изменений регистра, комментариев, полей, сносок, форматирования, верхних и нижних колонтитулов, таблиц и текстовых полей.

В этой теме мы научились сравнивать два файла Word. Чтобы удалить комментарии в файле Word, обратитесь к следующей статье: Удаление комментариев в Word DOC с помощью NET REST API.

 Русский