Konvertera DOCX till DOC eller DOC till DOCX med C++

Microsoft Word-dokument finns i två format, DOC och DOCX. DOC är ett äldre format och DOCX är dess efterföljare. Du kan konvertera DOCX-filer till DOC-format och vice versa. I den här artikeln kommer du att lära dig hur du konverterar en DOCX-fil till DOC-format och en DOC-fil till DOCX-format. Du kommer också att se hur du utför dessa konverteringar samtidigt. För att utforska dessa scenarier i detalj, se följande avsnitt:

C++ API för att konvertera DOCX till DOC och DOC till DOCX-format

Aspose.Words for C++ är ett inbyggt C++-bibliotek som låter dig skapa, läsa och ändra Microsoft Word-dokument. Dessutom stöder den även konvertering av DOCX-filer till DOC-format och DOC-filer till DOCX-format. Du kan antingen installera API:t genom NuGet eller ladda ner det direkt från avsnittet Nedladdningar.

PM> Install-Package Aspose.Words.Cpp

Konvertera DOCX-fil till DOC-format med C++

Du kan konvertera en DOCX-fil till DOC-format genom att följa stegen nedan.

Följande exempelkod visar hur man konverterar en DOCX-fil till en DOC-fil med C++.

// Skapa en instans av klassen LoadOptions
auto loadOptions = System::MakeObject<LoadOptions>();

// Ange LoadFormat för inmatat Word-dokument
loadOptions->set_LoadFormat(LoadFormat::Docx);

// Ladda käll DOCX-fil
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"SourceDirectory\\Word\\Sample 4.docx", loadOptions);

// Spara DOC-filen
doc->Save(u"OutputDirectory\\output.doc", SaveFormat::Doc);

Batch Konvertera DOCX-filer till DOC-format med C++

Om du har hundratals DOCX-filer som du behöver konvertera till DOC-format kan du enkelt konvertera dem genom att köra programmet en gång. I det här exemplet kommer vi att använda boost-biblioteket för att iterera genom filerna i katalogen. Följande är stegen för att batchkonvertera DOCX-filer till DOC-format.

Följande exempelkod visar hur man konverterar DOCX-filer till DOC-format i bulk med C++.

// Iterera genom filerna i katalogen
for (directory_entry& file : directory_iterator("SourceDirectory\\Word"))
{
    // Kontrollera filtillägget
    if (file.path().extension().string() == ".docx")
    {
        // Skapa en instans av klassen LoadOptions
        auto loadOptions = System::MakeObject<LoadOptions>();

        // Ange LoadFormat för inmatat Word-dokument
        loadOptions->set_LoadFormat(LoadFormat::Docx);

        // Ladda DOCX-filen
        System::SharedPtr<Document> doc = System::MakeObject<Document>((System::String)file.path().string(), loadOptions);

        // Ändra filtillägget
        System::String fileName = (System::String)file.path().filename().string();
        fileName = fileName.Replace(u".docx", u".doc");

        // Spara DOC-filen
        doc->Save(System::String::Concat(u"OutputDirectory\\", fileName), SaveFormat::Doc);
    }
}

Konvertera DOC-fil till DOCX-format med C++

Följande är stegen för att konvertera en DOC-fil till en DOCX-fil.

Följande exempelkod visar hur man konverterar en DOC-fil till en DOCX-fil med C++.

// Skapa en instans av klassen LoadOptions
auto loadOptions = System::MakeObject<LoadOptions>();

// Ange LoadFormat för inmatat Word-dokument
loadOptions->set_LoadFormat(LoadFormat::Doc);

// Ladda käll DOC-fil
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"SourceDirectory\\Word\\Sample 1.doc", loadOptions);

// Spara DOCX-filen
doc->Save(u"OutputDirectory\\output.docx", SaveFormat::Docx);

Batchkonvertera DOC-filer till DOCX-format med C++

För att konvertera DOC-filer till DOCX-format i bulk, använd stegen nedan.

Följande exempelkod visar hur man konverterar DOC-filer till DOCX-format i bulk med C++.

// Iterera genom filerna i katalogen
for (directory_entry& file : directory_iterator("SourceDirectory\\Word"))
{
    // Kontrollera filändelsen
    if (file.path().extension().string() == ".doc")
    {
        // Skapa en instans av klassen LoadOptions
        auto loadOptions = System::MakeObject<LoadOptions>();

        // Ange LoadFormat för inmatat Word-dokument
        loadOptions->set_LoadFormat(LoadFormat::Doc);

        // Ladda DOC-filen
        System::SharedPtr<Document> doc = System::MakeObject<Document>((System::String)file.path().string(), loadOptions);

        // Ändra filtillägget
        System::String fileName = (System::String)file.path().filename().string();
        fileName = fileName.Replace(u".doc", u".docx");

        // Spara DOCX-filen
        doc->Save(System::String::Concat(u"OutputDirectory\\", fileName), SaveFormat::Docx);
    }
}

Skaffa en gratis licens

Du kan prova API:et utan utvärderingsbegränsningar genom att begära en gratis tillfällig licens.

Slutsats

I den här artikeln har du lärt dig hur du konverterar en DOCX-fil till DOC-format och en DOC-fil till DOCX-format med C++. Dessutom har du sett hur man utför dessa konverteringar i bulk med hjälp av boost-biblioteket. Aspose.Words för C++ tillhandahåller ett gäng ytterligare funktioner för att automatisera dina Word-relaterade uppgifter. Du kan utforska API:et i detalj genom att besöka den officiella dokumentationen. Om du har några frågor är du välkommen att kontakta oss på vårt gratis supportforum.

Se även