Използвайте нашата C++ проверка на разликите във файловете, сравнете два документа и вижте разликите между тях, ясно показани в изхода. Вече няма нужда да сравнявате документите си ръчно. Също така имайте предвид, че резултатът от сравнението може да бъде експортиран в DOCX, PDF, DOC и други.
Нашето решение C++ е проектирано да ви даде възможно най-добрите резултати при използване на сложен алгоритъм за сравнение. Така че вече не е необходимо ръчно да търсите разлики в документите – не се колебайте да използвате нашия API за разлика между два файла.
Нашата машина за сравнение търси разлики на ниво знаци или цели думи. И ако е променен само един знак, цялата дума ще бъде маркирана като променена. Всички намерени промени могат да се видят ясно в изхода и да се експортират в удобен формат.
Най-популярните видове сравнение са PDF и Word файлове. Затова ще научим нашия инструмент за разлики C++ и неговата функция за сравнение, използвайки тези примери.
Понякога трябва да се уверите, че вашият PDF документ не е модифициран и да го сравните с оригиналната версия. Или вече знаете, че вашият PDF наистина е променен и трябва да потърсите къде и как. След това можете да сравните две версии на PDF файлове и да видите разликите. И за да избегнете да го правите ръчно, просто използвайте нашия C++ API за проверка на разликата.
С нашето решение C++ ще видите дори малки промени, които лесно бихте могли да пропуснете при ръчно сравнение.
Документите на Word се променят сравнително лесно, така че е важно да сравнявате Word файловете, за да сте сигурни, че части или целият документ не са се променили.
За да сравните Word файлове, използвайте нашето решение C++, точно както с PDF. Можете да направите това в примера по-долу.
За да видите как работи нашето сравнение на документи C++, заредете два файла, които искате да сравните, и изберете файлов формат за експортиране.
След като сравнението приключи, документът с разликата ще бъде изтеглен автоматично в избрания от вас формат.
Важно е документите, които се сравняват, да нямат ревизии преди сравнението, така че трябва да приемем всички ревизии, преди да започне сравнението. Не се притеснявайте, ние сме се погрижили за това в нашия пример:
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->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();
}
Клонирайте Aspose.Words Cloud SDK for C++ от GitHub. Можете да намерите подробна информация за изграждането и конфигурирането на SDK в раздела "How to use the SDK".
За да получите бързо необходимите идентификационни данни за сигурност и достъп до нашия REST API, моля, следвайте тези Instructions в документацията.
Обърнете се към Repository Documentation, за да видите подробностите.