Comparar documentos do Word

Executar comparação de texto em documentos do Word online

A tarefa de comparar arquivos de texto é muito comum ao incorporar alterações em um documento unificado. Portanto, durante o processo de revisão e mesclagem, a operação de comparação de texto é executada e geralmente usamos utilitários para comparar texto online. Portanto, neste artigo, discutiremos as etapas de como comparar documentos do Word e comparar arquivos de texto usando o Java SDK.

API de comparação de texto

Aspose.Words Cloud SDK for Java fornece uma grande variedade de recursos que permitem criar, editar e manipular documentos do Word no aplicativo Java. Agora, para usar o SDK, adicione os seguintes detalhes ao pom.xml do projeto de compilação maven.

<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>

Depois que o SDK estiver instalado, registre uma conta gratuita no painel Aspose.Cloud usando o GitHub ou a conta do Google ou simplesmente inscreva-se e obtenha suas credenciais de cliente.

Comparar documentos do Word em Java

Nesta seção, discutiremos os detalhes de como comparar documentos do Word usando trechos de código Java.

  • A primeira etapa é criar uma instância do WordsApi usando as credenciais do cliente
  • Em segundo lugar, carregue os documentos do Word de entrada e modificados para o armazenamento em nuvem enquanto passa o objeto UploadFileRequest para o método uploadFile(…) de WordsApi
  • Em terceiro lugar, crie um objeto CompareData e passe o segundo documento como um argumento para o método setComparingWithDocument(…)
  • Agora crie um objeto da classe CompareDocumentRequest onde passamos o arquivo do Word de entrada, o objeto CompareData e o documento do Word resultante como argumentos
  • Por fim, compare os arquivos de texto usando o método compareDocument(…) e salve a saída no armazenamento em nuvem
For more examples, please visit https://github.com/aspose-words-cloud/aspose-words-cloud-java

try
    {
    // se baseUrl for nulo, WordsApi usará https://api.aspose.cloud padrão
    WordsApi wordsApi = new WordsApi(clientId, clientSecret, null);

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

    // ler o primeiro documento do Word da unidade local
    File file = new File("c://Downloads/"+firstDocument);
    // leia o segundo documento do word da unidade local
    File file2 = new File("c://Downloads/"+secondDocument);

    // criar solicitação de upload de arquivo
    UploadFileRequest uploadRequest = new UploadFileRequest(Files.readAllBytes(file.toPath()), firstDocument, null);
    // criar 2ª solicitação de upload de arquivo
    UploadFileRequest uploadRequest2 = new UploadFileRequest(Files.readAllBytes(file2.toPath()), secondDocument, null);

    // fazer upload de arquivo para armazenamento em nuvem
    wordsApi.uploadFile(uploadRequest);        
    // fazer upload de arquivo para armazenamento em nuvem
    wordsApi.uploadFile(uploadRequest2);

    // Crie uma instância da classe CompareData
    CompareData compareData = new CompareData();
    
    // nome a ser usado como autor identificando as diferenças
    compareData.setAuthor("Nayyer");
    // especificar o documento para comparar com
    compareData.setComparingWithDocument(secondDocument);
    compareData.setDateTime(OffsetDateTime.now());
    
    // crie uma instância de solicitação fornecendo fonte, documento para comparar e nome do arquivo resultante
    CompareDocumentRequest request = new CompareDocumentRequest(firstDocument, compareData, null, null, null, null, null,resultantFile,null);
    
    // iniciar a comparação de documentos
    DocumentResponse result = wordsApi.compareDocument(request);
    
    // imprimir mensagem de sucesso
    System.out.println("Sucessfull completion of Compare Word Document !");
		
}catch(Exception ex)
{
    System.out.println(ex);
}
Comparar a visualização do documento do Word

Visualização da operação de comparar documento do Word

Os arquivos de amostra usados no exemplo acima podem ser baixados nos links a seguir

Comparação de texto usando comandos cURL

Também podemos acessar Aspose.Words Cloud por meio de comandos cURL e comparar arquivos de texto. Portanto, como pré-requisito, execute o seguinte comando para criar um token de acesso JWT com base nos detalhes do ID do cliente e do segredo do cliente.

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"

Assim que tivermos o token JWT, execute o seguinte comando para comparar o texto online e salvar o arquivo resultante no armazenamento em nuvem.

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\"}"

Conclusão

Este artigo explicou as etapas para comparar documentos usando comandos Java e cURL. Você pode explorar os recursos da API por meio da interface arrogante. Além disso, o código-fonte completo do SDK pode ser baixado do GitHub. Em caso de dúvidas ou dificuldades, visite o fórum de suporte gratuito.

Artigos relacionados

É altamente recomendável visitar os seguintes blogs