Los documentos de Microsoft Word están disponibles en dos formatos, DOC y DOCX. DOC es un formato más antiguo y DOCX es su sucesor. Puede convertir archivos DOCX a formato DOC y viceversa. En este artículo, aprenderá cómo convertir un archivo DOCX a formato DOC y un archivo DOC a formato DOCX. También verás cómo realizar estas conversiones de forma masiva. Para explorar estos escenarios en detalle, consulte las siguientes secciones:
- API de C++ para convertir DOCX a DOC y DOC a formato DOCX
- Conversión de archivos DOCX a formato DOC usando C++
- Conversión por lotes de archivos DOCX a formato DOC usando C++
- Convertir archivo DOC a formato DOCX usando C++
- Conversión por lotes de archivos DOC a formato DOCX usando C++
API de C++ para convertir DOCX a DOC y DOC a formato DOCX
Aspose.Words for C++ es una biblioteca nativa de C++ que le permite crear, leer y modificar documentos de Microsoft Word. Además, también admite la conversión de archivos DOCX a formato DOC y archivos DOC a formato DOCX. Puede instalar la API a través de NuGet o descargarla directamente desde la sección Descargas.
PM> Install-Package Aspose.Words.Cpp
Conversión de archivos DOCX a formato DOC usando C++
Puede convertir un archivo DOCX a formato DOC siguiendo los pasos que se indican a continuación.
- Cree una instancia de la clase LoadOptions.
- Establezca el formato de carga como DOCX usando el método LoadOptions->set_LoadFormat(Aspose::Words::LoadFormat value).
- Cargue el archivo DOCX de origen utilizando la clase Document.
- Guarde el archivo DOC convertido usando el método Document->Save(System::String fileName, Aspose::Words::SaveFormat saveFormat).
El siguiente código de ejemplo muestra cómo convertir un archivo DOCX a un archivo DOC usando C++.
// Crear una instancia de la clase LoadOptions
auto loadOptions = System::MakeObject<LoadOptions>();
// Especificar LoadFormat del documento de Word de entrada
loadOptions->set_LoadFormat(LoadFormat::Docx);
// Cargar archivo DOCX de origen
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"SourceDirectory\\Word\\Sample 4.docx", loadOptions);
// Guarde el archivo DOC
doc->Save(u"OutputDirectory\\output.doc", SaveFormat::Doc);
Conversión por lotes de archivos DOCX a formato DOC usando C++
Si tiene cientos de archivos DOCX que necesita convertir a formato DOC, puede convertirlos fácilmente ejecutando el programa una vez. En este ejemplo, usaremos la biblioteca boost para iterar a través de los archivos en el directorio. Los siguientes son los pasos para convertir por lotes archivos DOCX a formato DOC.
- Iterar a través de los archivos en el directorio.
- Cree una instancia de la clase LoadOptions.
- Establezca el formato de carga como DOCX usando el método LoadOptions->set_LoadFormat(Aspose::Words::LoadFormat value).
- Cargue los archivos DOCX usando la clase Document.
- Cambie la extensión a DOC en el nombre del archivo.
- Guarde el archivo DOC convertido usando el método Document->Save(System::String fileName, Aspose::Words::SaveFormat saveFormat).
El siguiente código de ejemplo demuestra cómo convertir archivos DOCX a formato DOC de forma masiva mediante C++.
// Iterar a través de los archivos en el directorio
for (directory_entry& file : directory_iterator("SourceDirectory\\Word"))
{
// Comprobar la extensión del archivo
if (file.path().extension().string() == ".docx")
{
// Crear una instancia de la clase LoadOptions
auto loadOptions = System::MakeObject<LoadOptions>();
// Especificar LoadFormat del documento de Word de entrada
loadOptions->set_LoadFormat(LoadFormat::Docx);
// Cargue el archivo DOCX
System::SharedPtr<Document> doc = System::MakeObject<Document>((System::String)file.path().string(), loadOptions);
// Cambiar la extensión del archivo
System::String fileName = (System::String)file.path().filename().string();
fileName = fileName.Replace(u".docx", u".doc");
// Guarde el archivo DOC
doc->Save(System::String::Concat(u"OutputDirectory\\", fileName), SaveFormat::Doc);
}
}
Convertir archivo DOC a formato DOCX usando C++
Los siguientes son los pasos para convertir un archivo DOC a un archivo DOCX.
- Cree una instancia de la clase LoadOptions.
- Establezca el formato de carga como DOC usando el método LoadOptions->set_LoadFormat(Aspose::Words::LoadFormat value).
- Cargue el archivo DOC de origen utilizando la clase Document.
- Guarde el archivo DOCX convertido usando el método Document->Save(System::String fileName, Aspose::Words::SaveFormat saveFormat).
El siguiente código de ejemplo muestra cómo convertir un archivo DOC en un archivo DOCX usando C++.
// Crear una instancia de la clase LoadOptions
auto loadOptions = System::MakeObject<LoadOptions>();
// Especificar LoadFormat del documento de Word de entrada
loadOptions->set_LoadFormat(LoadFormat::Doc);
// Cargar archivo DOC de origen
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"SourceDirectory\\Word\\Sample 1.doc", loadOptions);
// Guarde el archivo DOCX
doc->Save(u"OutputDirectory\\output.docx", SaveFormat::Docx);
Conversión por lotes de archivos DOC a formato DOCX usando C++
Para convertir archivos DOC a formato DOCX de forma masiva, siga los pasos que se indican a continuación.
- Iterar a través de los archivos en el directorio.
- Cree una instancia de la clase LoadOptions.
- Establezca el formato de carga como DOC usando el método LoadOptions->set_LoadFormat(Aspose::Words::LoadFormat value).
- Cargue los archivos DOC usando la clase Document.
- Cambie la extensión a DOCX en el nombre del archivo.
- Guarde el archivo DOCX convertido usando el método Document->Save(System::String fileName, Aspose::Words::SaveFormat saveFormat).
El siguiente código de ejemplo muestra cómo convertir archivos DOC a formato DOCX de forma masiva mediante C++.
// Iterar a través de los archivos en el directorio
for (directory_entry& file : directory_iterator("SourceDirectory\\Word"))
{
// Comprobar la extensión del archivo
if (file.path().extension().string() == ".doc")
{
// Crear una instancia de la clase LoadOptions
auto loadOptions = System::MakeObject<LoadOptions>();
// Especificar LoadFormat del documento de Word de entrada
loadOptions->set_LoadFormat(LoadFormat::Doc);
// Cargue el archivo DOC
System::SharedPtr<Document> doc = System::MakeObject<Document>((System::String)file.path().string(), loadOptions);
// Cambiar la extensión del archivo
System::String fileName = (System::String)file.path().filename().string();
fileName = fileName.Replace(u".doc", u".docx");
// Guarde el archivo DOCX
doc->Save(System::String::Concat(u"OutputDirectory\\", fileName), SaveFormat::Docx);
}
}
Obtenga una licencia gratis
Puede probar la API sin limitaciones de evaluación solicitando una licencia temporal gratuita.
Conclusión
En este artículo, ha aprendido cómo convertir un archivo DOCX a formato DOC y un archivo DOC a formato DOCX usando C++. Además, ha visto cómo realizar estas conversiones de forma masiva utilizando la biblioteca de impulso. Aspose.Words for C++ proporciona un montón de características adicionales para automatizar sus tareas relacionadas con Word. Puede explorar la API en detalle visitando la documentación oficial. Si tiene alguna pregunta, no dude en comunicarse con nosotros en nuestro foro de soporte gratuito.