C++ SDKを使用してWordまたはPDFファイルを比較する

PDF, Word, HTML, TXT, MDおよびその他の形式のファイルを比較するための強力なC++ライブラリ

C++ファイルの違いチェッカーを使用して、2つのドキュメントを比較し、出力に明確に示されているそれらの違いを確認します。ドキュメントを手動で比較する必要がなくなりました。また、比較結果はDOCX, PDF, DOCなどにエクスポートできることにも注意してください。

コードスニペットを表示

C++ の 2 つのファイルを比較する

当社の C++ ソリューションは、複雑な比較アルゴリズムを使用したときに可能な限り最良の結果が得られるように設計されています。そのため、ドキュメント内の差異を手動で検索する必要はなくなりました。API を自由に使用して 2 つのファイルを比較してください。

私たちの比較エンジンは、文字または単語全体のレベルで違いを探します。 1 文字だけが変更された場合は、単語全体が変更されたものとして強調表示されます。見つかったすべての変更は出力で明確に確認でき、便利な形式でエクスポートできます。

最も一般的なタイプの比較は、PDF ファイルと Word ファイルの比較です。したがって、これらの例を使用して C++ diff ツールとその比較関数を学習します。

C++ で PDF を比較

PDF ドキュメントが変更されていないことを確認し、元のバージョンと比較する必要がある場合があります。または、PDF が実際に変更されたことがすでにわかっており、どこをどのように変更したかを確認する必要がある場合もあります。次に、PDF ファイルの 2 つのバージョンを比較して、違いを確認できます。手動での実行を避けるには、C++ diff checker API を使用してください。

C++ ソリューションを使用すると、手動での比較では見逃しがちな小さな変更も確認できます。

C++ を使用して 2 つの Word 文書を比較する

Word 文書は非常に簡単に変更できるため、Word ファイルを比較して文書の一部または全体が変更されていないことを確認することが重要です。

Word ファイルを比較するには、PDF の場合と同様に、C++ ソリューションを使用します。以下の例でこれを行うことができます。

2 つの文書を比較する

C++ ドキュメントの比較がどのように機能するかを確認するには、比較する 2 つのファイルをロードし、エクスポート ファイル形式を選択します。

比較が完了すると、差分を含むドキュメントが選択した形式で自動的にダウンロードされます。

比較されるドキュメントには比較前にリビジョンが存在してはいけないことが重要です。そのため、比較を開始する前にすべてのリビジョンを受け入れる必要があります。心配しないでください。この例ではそれを処理しました。

比較したファイルをアップロードする
コードを実行する
比較する2番目のファイルをアップロードします
リストからターゲットフォーマットを選択します
using namespace aspose::words::cloud;

auto config = 
    std::make_shared<ApiConfiguration>(L"####-####-####-####-####", L"##################");
auto wordsApi = std::make_shared<WordsApi>(config);

std::wstring fileName1 = L"Input1.docx";
std::wstring fileName2 = L"Input2.docx";
std::wstring fileResult = L"Output.docx";

// ドキュメントをクラウドストレージにアップロードします。
auto firstDocumentContent = 
    std::shared_ptr<std::istream>(
	new std::ifstream(std::filesystem::path(fileName1), std::istream::binary));
std::shared_ptr<requests::UploadFileRequest> uploadFirstFileRequest(
    new requests::UploadFileRequest(
        firstDocumentContent, std::make_shared<std::wstring>(fileName1)
    )
);
wordsApi->uploadFile(uploadFirstFileRequest);

auto secondDocumentContent = 
    std::shared_ptr<std::istream>(
	new std::ifstream(std::filesystem::path(fileName2), std::istream::binary));
std::shared_ptr<requests::UploadFileRequest> uploadSecondFileRequest(
    new requests::UploadFileRequest(
        secondDocumentContent, std::make_shared<std::wstring>(fileName2)
    )
);
wordsApi->uploadFile(uploadSecondFileRequest);

// クラウド内のドキュメントを比較します。
auto compareDataOptions = std::make_shared<aspose::words::cloud::models::CompareData>();
compareDataOptions->setAuthor(std::make_shared<std::wstring>(L"author"));
compareDataOptions->setComparingWithDocument(std::make_shared<std::wstring>(fileName2));
std::shared_ptr<requests::CompareDocumentRequest> compareDocumentRequest(
    new requests::CompareDocumentRequest(
        std::make_shared<std::wstring>(fileName1), 
		compareDataOptions, std::make_shared<std::wstring>(fileResult)
    )
);
wordsApi->compareDocument(compareDocumentRequest);

// クラウドストレージから結果ドキュメントをダウンロードします。
std::shared_ptr<requests::DownloadFileRequest> downloadFileRequest(
    new requests::DownloadFileRequest(
        std::make_shared<std::wstring>(fileResult)
    )
);
auto downloadFileResult = wordsApi->downloadFile(downloadFileRequest);
{
    char buffer[1024];
    std::ofstream fileWriter(fileResult, std::ofstream::binary);
    const auto& fileData = *downloadFileResult->begin();
    while(fileData.second->read(buffer, sizeof(buffer))) {
        fileWriter.write(buffer, sizeof(buffer));
    }
    fileWriter.write(buffer, fileData.second->gcount());
    fileWriter.close();
}
コードを実行する
  
C++をクリップボードにコピーします

ファイルの2つのバージョンを比較する方法

  1. Aspose.Words Cloud for C++インストールします
  2. C++プロジェクトにライブラリ参照を追加(ライブラリをインポート)
  3. 比較する2つのドキュメントをロードする
  4. compareDocument()メソッドを呼び出して、2つのドキュメントを比較します
  5. クラウドストレージから結果ドキュメントをダウンロードします

C++使用するライブラリ比較

GitHub Aspose.Words Cloud SDK for C++ クローンを作成します。 SDKの構築と構成の詳細については、 "How to use the SDK" セクションを参照してください。

必要なセキュリティクレデンシャルをすばやく取得してRESTAPIにアクセスするには、ドキュメントの次の Instructions に従ってください。

システム要求

詳細については、 Repository Documentation を参照してください。

比較操作で最も一般的な形式

5%

Aspose製品アップデートを購読する

メールボックスに直接配信される月刊ニュースレターとオファーを入手してください。

© Aspose Pty Ltd 2001-2024. 全著作権所有。