C++ SDK は、比較自体が複雑な関数であっても、最も正確な結果が得られるように設計されています。
場合によっては、DOC 形式のドキュメントが変更されていないことを確認する必要があり、変更されている場合は、その違いを確認する必要があります。 C++ diff ツールを使用して 2 つの DOC ファイルを比較し、単語全体または単一文字の違いを見つけます。さらに、単語内の 1 文字だけが変更された場合、その単語は完全に変更されたものとしてマークされます。
DOC ドキュメントを手動で比較するのに時間を費やす必要がなくなり、小さな変更でもすぐに見つけて、そのような差分を便利な形式でドキュメントにエクスポートできるようになりました。
C++ SDK を使用して DOC ファイルを比較するソリューションがどのように機能するかを確認してください。これを行うには、比較する DOC ファイルをロードし、エクスポート ファイル形式を選択します。比較後、エクスポート ファイル形式が自動的にロードされます。
例に示すように、比較メソッドを呼び出す前に、比較したドキュメント内のすべてのリビジョンを受け入れる必要があることに注意してください。
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.doc";
std::wstring fileName2 = L"Input2.doc";
std::wstring fileResult = L"Output.doc";
// ドキュメントをクラウドストレージにアップロードします。
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->setFileReference(
std::make_shared<aspose::words::cloud::models::FileReference>(
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();
}
GitHub Aspose.Words Cloud SDK for C++ クローンを作成します。 SDKの構築と構成の詳細については、 "How to use the SDK" セクションを参照してください。
必要なセキュリティクレデンシャルをすばやく取得してRESTAPIにアクセスするには、ドキュメントの次の Instructions に従ってください。
詳細については、 Repository Documentation を参照してください。