Comparar documentos do Word

Comparar documentos do Word usando C# .NET

Como as empresas e os indivíduos dependem mais da documentação digital, a necessidade de ferramentas eficientes de comparação de documentos tornou-se cada vez mais importante. A comparação manual de documentos pode ser tediosa, demorada e sujeita a erros. Felizmente, com o poder do C# .NET, você pode automatizar o processo de comparação de documentos do Word, tornando-o mais rápido, preciso e confiável. Nesta postagem do blog, exploraremos como você pode aproveitar o .NET Cloud SDK para comparar documentos do Word e como usar seus recursos para economizar tempo e melhorar o processo de revisão de documentos.

API REST para comparar documentos

Aspose.Words Cloud SDK para .NET é uma ferramenta poderosa que pode ajudá-lo a comparar documentos do Word com facilidade. Com seu conjunto abrangente de recursos, você pode comparar dois ou mais documentos, identificar alterações e diferenças entre eles e gerar um relatório que destaca as alterações. Seja você um desenvolvedor, um gerente de projeto ou um editor, este SDK pode ajudá-lo a otimizar seu processo de comparação de documentos e economizar seu tempo valioso.

Agora, para usar o SDK, pesquise Aspose.Words-Cloud no gerenciador de pacotes NuGet e clique no botão Adicionar pacote para adicionar a referência do SDK no projeto .NET.

Comparar documentos do Word em C#

Tente usar o trecho de código a seguir para comparar documentos do Word online.

// Para exemplos completos e arquivos de dados, acesse 
https://github.com/aspose-words-cloud/aspose-words-cloud-dotnet

// Obtenha as credenciais do cliente em https://dashboard.aspose.cloud/
string clientSecret = "7f098199230fc5f2175d494d48f2077c";
string clientID = "ee170169-ca49-49a4-87b7-0e2ff815ea6e";

// criar objeto de configuração usando ClinetID e detalhes do segredo do cliente
var config = new Aspose.Words.Cloud.Sdk.Configuration { ClientId = clientID, ClientSecret = clientSecret };
// inicializar a instância WordsApi
var wordsApi = new WordsApi(config);

string firstDocument = "input-sample-1.docx";
string secondDocument = "input-sample-2.docx";
string resultantFile = "Comparison.docx";

// leia o conteúdo do primeiro documento do Word da unidade local
var firstFile = System.IO.File.OpenRead(firstDocument);
// ler o primeiro documento do Word da unidade local
var secondFile = System.IO.File.OpenRead(secondDocument);
try
{
    // fazer upload de documentos do Word de entrada para armazenamento em nuvem
    wordsApi.UploadFile(new UploadFileRequest(firstFile, firstDocument));
    wordsApi.UploadFile(new UploadFileRequest(secondFile, secondDocument));

    CompareData compareData = new CompareData();
    // especificar o documento a ser comparado com
    compareData.ComparingWithDocument = secondDocument;
    // detalhes do autor
    compareData.Author = "Nayer Shahbaz";
    compareData.DateTime = DateTime.Now.Date;
    // formato do documento resultante
    compareData.ResultDocumentFormat = "DOCX";

    // definir opções de comparação de documentos
    CompareOptions options = new CompareOptions()
    {
        IgnoreCaseChanges = true,
        IgnoreFormatting = true,
        IgnoreHeadersAndFooters = true,
        IgnoreFootnotes = true,
        IgnoreComments = true,
        IgnoreTextboxes = true,
        IgnoreTables = true,
        Target = CompareOptions.TargetEnum.Current,
        AcceptAllRevisionsBeforeComparison = true
     };
     compareData.CompareOptions = options

    // Crie uma instância de CreateDocument
    CompareDocumentRequest compare = new CompareDocumentRequest();
    compare.CompareData = compareData;
    compare.Name = firstDocument;
    // nome do arquivo resultante
    compare.DestFileName = resultantFile;
    
    // iniciar a operação de comparação de documentos
    wordsApi.CompareDocument(compare);
}
catch(Exception ex)
{
    // qualquer exceção durante o upload do arquivo para o armazenamento em nuvem
    Console.Write(ex.StackTrace);
}
// create configuration object using ClientID and Client Secret details
var config = new Configuration { ClientId = clientID, ClientSecret = clientSecret };
// initialize WordsApi instance
var wordsApi = new WordsApi(config);

Crie uma instância do WordsApi usando as credenciais do cliente.

// read the content of first Word document from local drive
var firstFile = System.IO.File.OpenRead(firstDocument);
wordsApi.UploadFile(new UploadFileRequest(firstFile, firstDocument));

Leia o conteúdo do documento do Word de entrada e faça o upload para o armazenamento em nuvem.

CompareData compareData = new CompareData();
compareData.ComparingWithDocument = secondDocument;
compareData.Author = "Nayyer Shahbaz";
compareData.DateTime = DateTime.Now.Date;
compareData.ResultDocumentFormat = "DOCX";

Crie uma instância do objeto CompareData onde especificamos o nome do documento a ser comparado, detalhes do autor, informações de data e hora e o formato do documento resultante.

CompareOptions options = new CompareOptions()
{
    IgnoreCaseChanges = true,
    IgnoreFormatting = true,
    IgnoreHeadersAndFooters = true,
    IgnoreFootnotes = true,
    IgnoreComments = true,
    IgnoreTextboxes = true,
    IgnoreTables = true,
    Target = CompareOptions.TargetEnum.Current,
    AcceptAllRevisionsBeforeComparison = true
};
compareData.CompareOptions = options;

Crie a instância CompareOptions onde definimos várias opções de comparação.

CompareDocumentRequest compare = new CompareDocumentRequest();
compare.CompareData = compareData;
compare.Name = firstDocument;
compare.DestFileName = resultantFile;

Especifique a instância CompareData, o nome do documento do Word de origem e o nome do arquivo de saída que contém o resultado da comparação.

wordsApi.CompareDocument(compare);

Inicie a operação de comparação de documentos e gere a saída no armazenamento em nuvem.

Comparar dois documentos usando comandos cURL

Discutimos que comparar documentos do Word pode ser uma tarefa desafiadora e demorada, especialmente ao lidar com vários arquivos ou formatação complexa. Felizmente, os comandos Aspose.Words Cloud e cURL fornecem uma solução poderosa para comparar documentos do Word de forma rápida e fácil. Podemos comparar dois ou mais documentos, rastrear alterações e gerar um relatório detalhado que destaca as diferenças entre os documentos.

Agora, 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"

Depois que o token JWT for gerado, execute o seguinte comando para comparar dois documentos do Word online e salve o arquivo resultante no armazenamento em nuvem.

curl -v "https://api.aspose.cloud/v4.0/words/{sourceFirst}/compareDocument?destFileName={differenceFile}" \
-X PUT \
-H  "accept: application/json" \
-H  "Authorization: Bearer {accessToken}" \
-H  "Content-Type: application/json" \
-d "{\"ComparingWithDocument\":\"input-sample-2.docx\",\"Author\":\"Nayyer Shahbaz\",\"DateTime\":\"2023-04-23T06:02:29.481Z\",\"CompareOptions\":{\"IgnoreCaseChanges\":true,\"IgnoreTables\":true,\"IgnoreFields\":true,\"IgnoreFootnotes\":true,\"IgnoreComments\":true,\"IgnoreTextboxes\":true,\"IgnoreFormatting\":true,\"IgnoreHeadersAndFooters\":true,\"Target\":\"Current\",\"AcceptAllRevisionsBeforeComparison\":true},\"ResultDocumentFormat\":\"docx\"}"

Substitua {sourceFirst} pelo nome do documento do Word de entrada (presente no armazenamento em nuvem), {accessToken} pelo token de acesso JWT gerado acima e {differenceFile} pelo nome do documento do Word resultante destacando a diferença de comparação .

comparação de documentos de palavras

Imagem:- Visualização da comparação de documentos do Word usando a API .NET REST.

Conclusão

Concluindo, comparar documentos do Word pode ser uma tarefa assustadora, mas com a ajuda dos comandos Aspose.Words Cloud e cURL ou seu robusto .NET Cloud SDK, você tem uma solução poderosa à sua disposição. Quer você prefira trabalhar com C# .NET ou usar ferramentas de linha de comando como cURL, o Aspose.Words Cloud oferece uma variedade de opções para comparar dois ou mais documentos, rastrear alterações e gerar relatórios detalhados. Com seus recursos flexíveis e personalizáveis, é um recurso essencial para quem trabalha regularmente com documentos do Word. Então, por que não experimentá-lo e ver como ele pode ajudá-lo a otimizar seu processo de comparação de documentos.

Artigos relacionados

É altamente recomendável visitar os seguintes blogs: