Compare Word or PDF files using Go SDK

Powerful Go library to compare files in PDF, Word, HTML, TXT, MD and other formats

Use our Go file difference checker, compare two documents and see the differences between them clearly shown in the output. You no longer need to compare your documents manually. Also note that the comparison result can be exported to a DOCX, PDF, DOC and others.

View code snippet

Comparing two files in Go

Our Go solution is designed to give you the best possible results when using a complex comparison algorithm. So, you no longer need to manually look up differences in documents – feel free to use our API to diff two files.

Our comparison engine looks for differences at the level of characters or whole words. And if only one character was changed, the whole word will be highlighted as changed. All found changes can be clearly viewed in the output and exported in a convenient format.

The most popular types of comparison are comparing PDF and Word files. Therefore, we will learn our Go diff tool and its comparison function using these examples.

Compare PDF in Go

Sometimes you need to make sure that your PDF document has not been modified and compare it with the original version. Or you already know that your PDF has really changed, and you need to look where and how. Then you can compare two versions of PDF files and see the differences. And to avoid doing it manually, just use our Go diff checker API.

With our Go solution, you will see even small changes that you could easily miss in a manual comparison.

Compare two Word documents using Go

Word documents are fairly easy to change, so it is important to compare Word files to make sure parts or the entire document have not changed.

To compare Word files, use our Go solution, just like with PDF. You can do this in the example below.

Сompare two documents

To see how our Go document compare works, load two files you want to compare and choose an export file format.

After the comparison is completed, the document with the diff will be automatically downloaded in the format you selected.

It is important that the documents being compared must not have any revisions before the comparison, so we need to accept all revisions before the compare starts. Do not worry, we have taken care of that in our example:

Upload the compared file
Run code
Upload the second file to compare
Select the target format from the list
import (
    "os"
    "github.com/aspose-words-cloud/aspose-words-cloud-go/dev/api/models"
)

config, _ := models.NewConfiguration("config.json")
wordsApi, ctx, _ := api.CreateWordsApi(config)

fileName1:= "Input1.docx"
fileName2:= "Input2.docx"
fileResult:= "Output.docx"

//  Upload documents to cloud storage.
firstDocumentContent, _ := os.Open(fileName1)
uploadFirstFileRequestOptions := map[string]interface{}{}
uploadFirstFileRequest := &models.UploadFileRequest{
    FileContent: firstDocumentContent,
    Path: ToStringPointer(fileName1),
    Optionals: uploadFirstFileRequestOptions,
}
_, _, _ = wordsApi.UploadFile(ctx, uploadFirstFileRequest)

secondDocumentContent, _ := os.Open(fileName2)
uploadSecondFileRequestOptions := map[string]interface{}{}
uploadSecondFileRequest := &models.UploadFileRequest{
    FileContent: secondDocumentContent,
    Path: ToStringPointer(fileName2),
    Optionals: uploadSecondFileRequestOptions,
}
_, _, _ = wordsApi.UploadFile(ctx, uploadSecondFileRequest)

//  Compare documents in cloud.
compareDataOptions := models.CompareData{
    Author: ToStringPointer("author"),
    ComparingWithDocument: ToStringPointer(fileName2),
}
compareDocumentRequestOptions := map[string]interface{}{"destFileName": fileResult,}
compareDocumentRequest := &models.CompareDocumentRequest{
    Name: ToStringPointer(fileName1),
    CompareData: &compareDataOptions,
    Optionals: compareDocumentRequestOptions,
}
_, _, _ = wordsApi.CompareDocument(ctx, compareDocumentRequest)

//  Download result document from cloud storage.
downloadFileRequestOptions := map[string]interface{}{}
downloadFileRequest := &models.DownloadFileRequest{
    Path: ToStringPointer(fileResult),
    Optionals: downloadFileRequestOptions,
}
_, _ = wordsApi.DownloadFile(ctx, downloadFileRequest)
Run code
  
Copy Go code to the clipboard

How to Compare two versions of a file

  1. Install Aspose.Words Cloud for Go
  2. Add a library reference (import the library) to your Go project
  3. Load two documents to compare
  4. Call the CompareDocument() method to compare two docs
  5. Download the result document from the cloud storage

Go library to use compare

Run go get -v github.com/aspose-words-cloud/aspose-words-cloud-go/2007/api to install Aspose.Words Cloud SDK for Go. You can get a lot of useful information about other installation methods from the "How to use SDK" section.

Clone Aspose.Words Cloud SDK for Go source code from GitHub and use it in your project. Please follow these Instructions to quickly get the necessary security credentials and access our REST API.

System Requirements

Refer to the Repository Documentation to see the details.

Most popular formats for compare operations

5%

Subscribe to Aspose Product Updates

Get monthly newsletters and offers directly delivered to your mailbox.

© Aspose Pty Ltd 2001-2024. All Rights Reserved.