比較 Word 文檔

在 Word 文檔中在線執行文本比較

將更改合併到統一文檔中時,比較文本文件的任務非常常見。因此在審查和合併過程中,會執行文本比較操作,我們經常使用實用程序在線比較文本。所以在本文中,我們將討論如何使用 Java SDK 比較 word 文檔和比較文本文件的步驟。

比較文本 API

Aspose.Words Cloud SDK for Java 提供了大量功能,使您可以在 Java 應用程序中創建、編輯和操作 Word 文檔。現在為了使用 SDK,請將以下詳細信息添加到 maven 構建項目的 pom.xml 中。

<repositories>
    <repository>
        <id>AsposeJavaAPI</id>
        <name>Aspose Java API</name>
        <url>https://repository.aspose.cloud/repo/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-words-cloud</artifactId>
        <version>22.5.0</version>
    </dependency>
</dependencies>

安裝 SDK 後,請使用 GitHub 或 Google 帳戶在 Aspose.Cloud dashboard 上註冊一個免費帳戶,或者只需註冊並獲取您的客戶憑據。

在 Java 中比較 Word 文檔

在本節中,我們將討論如何使用 Java 代碼片段比較 word 文檔的細節。

  • 第一步是使用客戶端憑據創建 WordsApi 實例
  • 其次,在將 UploadFileRequest 對像傳遞給 WordsApi 的 uploadFile(…) 方法的同時,將輸入和修改的 Word 文檔上傳到雲存儲
  • 第三,創建一個 CompareData 對象並將第二個文檔作為參數傳遞給 setComparingWithDocument(…) 方法
  • 現在創建一個 CompareDocumentRequest 類的對象,我們將輸入的 Word 文件、CompareData 對象和生成的 word 文檔作為參數傳遞給該類
  • 最後,使用 compareDocument(…) 方法比較文本文件並將輸出保存在雲存儲中
For more examples, please visit https://github.com/aspose-words-cloud/aspose-words-cloud-java

try
    {
    // 如果 baseUrl 為 null,WordsApi 使用默認的 https://api.aspose.cloud
    WordsApi wordsApi = new WordsApi(clientId, clientSecret, null);

    String firstDocument = "input-sample.docx";
    String secondDocument = "input-sample-updated.docx";
    String resultantFile = "Comparison.docx";

    // 從本地驅動器讀取第一個 Word 文檔
    File file = new File("c://Downloads/"+firstDocument);
    // 從本地驅動器讀取第二個 word 文檔
    File file2 = new File("c://Downloads/"+secondDocument);

    // 創建文件上傳請求
    UploadFileRequest uploadRequest = new UploadFileRequest(Files.readAllBytes(file.toPath()), firstDocument, null);
    // 創建第二個文件上傳請求
    UploadFileRequest uploadRequest2 = new UploadFileRequest(Files.readAllBytes(file2.toPath()), secondDocument, null);

    // 上傳文件到雲存儲
    wordsApi.uploadFile(uploadRequest);        
    // 上傳文件到雲存儲
    wordsApi.uploadFile(uploadRequest2);

    // 創建 CompareData 類的實例
    CompareData compareData = new CompareData();
    
    // 用作識別差異的作者的姓名
    compareData.setAuthor("Nayyer");
    // 指定要比較的文檔
    compareData.setComparingWithDocument(secondDocument);
    compareData.setDateTime(OffsetDateTime.now());
    
    // 通過提供源、要比較的文檔和結果文件名來創建 Request 實例
    CompareDocumentRequest request = new CompareDocumentRequest(firstDocument, compareData, null, null, null, null, null,resultantFile,null);
    
    // 啟動文檔比較
    DocumentResponse result = wordsApi.compareDocument(request);
    
    // 打印成功信息
    System.out.println("Sucessfull completion of Compare Word Document !");
		
}catch(Exception ex)
{
    System.out.println(ex);
}
比較 Word 文檔預覽

比較 Word 文檔操作的預覽

上面示例中使用的示例文件可以從以下鏈接下載

使用 cURL 命令比較文本

我們還可以通過 cURL 命令訪問 Aspose.Words Cloud 並比較文本文件。因此,作為先決條件,請執行以下命令以根據客戶端 ID 和客戶端密碼詳細信息創建 JWT 訪問令牌。

curl -v "https://api.aspose.cloud/connect/token" \
 -X POST \
 -d "grant_type=client_credentials&client_id=a41d01ef-dfd5-4e02-ad29-bd85fe41e3e4&client_secret=d87269aade6a46cdc295b711e26809af" \
 -H "Content-Type: application/x-www-form-urlencoded" \
 -H "Accept: application/json"

一旦我們有了 JWT Token,請執行以下命令在線比較文本並將結果文件保存在雲存儲中。

curl -v -X PUT "https://api.aspose.cloud/v4.0/words/input-sample.docx/compareDocument?destFileName=Comparison.docx" \
-H  "accept: application/json" \
-H  "Authorization: Bearer <JWT Token>" \
-H  "Content-Type: application/json" \
-d "{\"ComparingWithDocument\":\"input-sample-updated.docx\",\"Author\":\"Nayyer Shahbaz\",\"DateTime\":\"2022-07-21T07:54:06.768Z\",\"CompareOptions\":{\"IgnoreCaseChanges\":true,\"IgnoreTables\":true,\"IgnoreFields\":true,\"IgnoreFootnotes\":true,\"IgnoreComments\":true,\"IgnoreTextboxes\":true,\"IgnoreFormatting\":true,\"IgnoreHeadersAndFooters\":true,\"Target\":\"Current\",\"AcceptAllRevisionsBeforeComparison\":true},\"ResultDocumentFormat\":\"docx\"}"

結論

本文介紹了使用 Java 和 cURL 命令比較文檔的步驟。您可以考慮通過 swagger 接口 探索 API 功能。此外,完整的 SDK 源代碼可以從 GitHub 下載。如果您有任何進一步的疑問或遇到任何困難,請訪問免費支持論壇

相關文章

我們強烈建議瀏覽以下博客