Converter DOCX para DOC ou DOC para DOCX usando C++

Os documentos do Microsoft Word estão disponíveis em dois formatos, DOC e DOCX. O DOC é um formato mais antigo e o DOCX é seu sucessor. Você pode converter arquivos DOCX para o formato DOC e vice-versa. Neste artigo, você aprenderá como converter um arquivo DOCX para o formato DOC e um arquivo DOC para o formato DOCX. Você também verá como realizar essas conversões em massa. Para explorar esses cenários em detalhes, consulte as seguintes seções:

API C++ para conversão do formato DOCX para DOC e DOC para DOCX

Aspose.Words for C++ é uma biblioteca nativa de C++ que permite criar, ler e modificar documentos do Microsoft Word. Além disso, também suporta a conversão de arquivos DOCX para o formato DOC e arquivos DOC para o formato DOCX. Você pode instalar a API por meio do NuGet ou baixá-la diretamente da seção Downloads.

PM> Install-Package Aspose.Words.Cpp

Convertendo arquivo DOCX para formato DOC usando C++

Você pode converter um arquivo DOCX para o formato DOC seguindo as etapas abaixo.

O código de exemplo a seguir mostra como converter um arquivo DOCX em um arquivo DOC usando C++.

// Crie uma instância da classe LoadOptions
auto loadOptions = System::MakeObject<LoadOptions>();

// Especifique LoadFormat do documento do word de entrada
loadOptions->set_LoadFormat(LoadFormat::Docx);

// Carregar arquivo DOCX de origem
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"SourceDirectory\\Word\\Sample 4.docx", loadOptions);

// Salve o arquivo DOC
doc->Save(u"OutputDirectory\\output.doc", SaveFormat::Doc);

Converter arquivos DOCX em lote para o formato DOC usando C++

Se você tiver centenas de arquivos DOCX que precisa converter para o formato DOC, poderá convertê-los facilmente executando o programa uma vez. Neste exemplo, usaremos a biblioteca boost para percorrer os arquivos no diretório. A seguir estão as etapas para converter arquivos DOCX em lote para o formato DOC.

O código de exemplo a seguir demonstra como converter arquivos DOCX para o formato DOC em massa usando C++.

// Iterar pelos arquivos no diretório
for (directory_entry& file : directory_iterator("SourceDirectory\\Word"))
{
    // Verifique a extensão do arquivo
    if (file.path().extension().string() == ".docx")
    {
        // Crie uma instância da classe LoadOptions
        auto loadOptions = System::MakeObject<LoadOptions>();

        // Especifique LoadFormat do documento do word de entrada
        loadOptions->set_LoadFormat(LoadFormat::Docx);

        // Carregar o arquivo DOCX
        System::SharedPtr<Document> doc = System::MakeObject<Document>((System::String)file.path().string(), loadOptions);

        // Alterar a extensão do arquivo
        System::String fileName = (System::String)file.path().filename().string();
        fileName = fileName.Replace(u".docx", u".doc");

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

Converter arquivo DOC para formato DOCX usando C++

A seguir estão as etapas para converter um arquivo DOC em um arquivo DOCX.

O código de exemplo a seguir mostra como converter um arquivo DOC em um arquivo DOCX usando C++.

// Crie uma instância da classe LoadOptions
auto loadOptions = System::MakeObject<LoadOptions>();

// Especifique LoadFormat do documento do word de entrada
loadOptions->set_LoadFormat(LoadFormat::Doc);

// Carregar arquivo DOC de origem
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"SourceDirectory\\Word\\Sample 1.doc", loadOptions);

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

Converter arquivos DOC em lote para o formato DOCX usando C++

Para converter arquivos DOC para o formato DOCX em massa, use as etapas abaixo.

O código de exemplo a seguir demonstra como converter arquivos DOC para o formato DOCX em massa usando C++.

// Iterar pelos arquivos no diretório
for (directory_entry& file : directory_iterator("SourceDirectory\\Word"))
{
    // Verifique a extensão do arquivo
    if (file.path().extension().string() == ".doc")
    {
        // Crie uma instância da classe LoadOptions
        auto loadOptions = System::MakeObject<LoadOptions>();

        // Especifique LoadFormat do documento do word de entrada
        loadOptions->set_LoadFormat(LoadFormat::Doc);

        // Carregar o arquivo DOC
        System::SharedPtr<Document> doc = System::MakeObject<Document>((System::String)file.path().string(), loadOptions);

        // Alterar a extensão do arquivo
        System::String fileName = (System::String)file.path().filename().string();
        fileName = fileName.Replace(u".doc", u".docx");

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

Obtenha uma licença gratuita

Você pode experimentar a API sem limitações de avaliação solicitando uma licença temporária gratuita.

Conclusão

Neste artigo, você aprendeu como converter um arquivo DOCX para o formato DOC e um arquivo DOC para o formato DOCX usando C++. Além disso, você viu como realizar essas conversões em massa usando a biblioteca boost. Aspose.Words para C++ fornece vários recursos adicionais para automatizar suas tarefas relacionadas ao Word. Você pode explorar a API em detalhes visitando a documentação oficial. Em caso de dúvidas, sinta-se à vontade para entrar em contato conosco em nosso fórum de suporte gratuito.

Veja também