Palyginkite Word arba PDF failus naudodami C++ SDK

Galinga C++ biblioteka, skirta PDF, Word, HTML, TXT, MD ir kitų formatų failams palyginti

Naudokite mūsų C++ failų skirtumų tikrintuvą, palyginkite du dokumentus ir pamatykite jų skirtumus, aiškiai parodytus išvestyje. Jums nebereikia lyginti dokumentų rankiniu būdu. Taip pat atkreipkite dėmesį, kad palyginimo rezultatą galima eksportuoti į DOCX, PDF, DOC ir kt.

Peržiūrėkite kodo fragmentą

Dviejų failų palyginimas C++

Mūsų C++ sprendimas sukurtas taip, kad naudojant sudėtingą palyginimo algoritmą gautumėte geriausius įmanomus rezultatus. Taigi, jums nebereikia rankiniu būdu ieškoti dokumentų skirtumų – nedvejodami naudokite mūsų API, kad atskirtumėte du failus.

Mūsų palyginimo variklis ieško skirtumų simbolių ar ištisų žodžių lygyje. Ir jei buvo pakeistas tik vienas simbolis, visas žodis bus paryškintas kaip pakeistas. Visus rastus pakeitimus galima aiškiai peržiūrėti išvestyje ir eksportuoti patogiu formatu.

Populiariausi palyginimo tipai yra PDF ir Word failų palyginimas. Todėl mes išmoksime mūsų C++ diff įrankį ir jo palyginimo funkciją naudodami šiuos pavyzdžius.

Palyginkite PDF formatu C++

Kartais reikia įsitikinti, kad PDF dokumentas nebuvo pakeistas, ir palyginti jį su originalia versija. Arba jau žinote, kad jūsų PDF tikrai pasikeitė, ir jums reikia ieškoti, kur ir kaip. Tada galite palyginti dvi PDF failų versijas ir pamatyti skirtumus. Ir norėdami to nedaryti rankiniu būdu, tiesiog naudokite mūsų C++ skirtumų tikrinimo API.

Naudodami C++ sprendimą pamatysite net nedidelius pakeitimus, kuriuos galite lengvai praleisti palygindami rankiniu būdu.

Palyginkite du "Word" dokumentus naudodami C++

"Word" dokumentus gana lengva pakeisti, todėl svarbu palyginti "Word" failus, kad įsitikintumėte, jog dalys ar visas dokumentas nepasikeitė.

Norėdami palyginti Word failus, naudokite mūsų C++ sprendimą, kaip ir PDF. Tai galite padaryti toliau pateiktame pavyzdyje.

Palyginkite du dokumentus

Norėdami pamatyti, kaip veikia mūsų C++ dokumento palyginimas, įkelkite du failus, kuriuos norite palyginti, ir pasirinkite eksporto failo formatą.

Baigus palyginimą, dokumentas su skirtumu bus automatiškai atsisiunčiamas jūsų pasirinktu formatu.

Svarbu, kad lyginamuose dokumentuose prieš palyginimą nebūtų jokių pataisymų, todėl prieš pradedant palyginimą turime priimti visas pataisas. Nesijaudinkite, mes tuo pasirūpinome savo pavyzdyje:

Įkelkite palygintą failą
Vykdyti kodą
Įkelkite antrą failą, kad galėtumėte palyginti
Iš sąrašo pasirinkite tikslinį formatą
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";

//  Įkelkite dokumentus į debesies saugyklą.
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);

//  Palyginkite dokumentus debesyje.
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);

//  Atsisiųskite rezultatų dokumentą iš debesies saugyklos.
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();
}
Vykdyti kodą
  
Nukopijuokite kodą C++ į mainų sritį

Kaip palyginti dvi failo versijas

  1. Įdiekite Aspose.Words Cloud for C++
  2. Pridėkite bibliotekos nuorodą (importuokite biblioteką) prie savo C++ projekto
  3. Norėdami palyginti, įkelkite du dokumentus
  4. Iškvieskite compareDocument() metodą, kad palygintumėte du dokumentus
  5. Atsisiųskite rezultatų dokumentą iš debesies saugyklos

C++ biblioteka, kurią galima naudoti palyginimui

Aspose.Words Cloud SDK for C++ šaltinio kodui iš GitHub. Išsamią informaciją apie SDK kūrimą ir konfigūravimą rasite skiltyje "How to use the SDK".

Norėdami greitai gauti reikiamus saugos kredencialus ir pasiekti mūsų REST API, vadovaukitės šiomis dokumentacijoje pateiktomis Instructions.

Sistemos reikalavimai

Išsamią informaciją rasite Repository Documentation.

Populiariausi palyginimo operacijų formatai

5%

Prenumeruokite "Aspose" produktų naujinius

Gaukite mėnesinius naujienlaiškius ir pasiūlymus, pristatomus tiesiai į jūsų pašto dėžutę.

© Aspose Pty Ltd 2001-2024. Visos teisės saugomos.