Combinar varios documentos .docx con Open XML

15/01/2009 - 16:29 por Pedro Hueso | Informe spam
Hola,

Tengo varios ficheros de Microsoft Word 2007 .docx creados.

Necesito hacer un programa en C# y OpenXML que combine o añada todos estos
documentos en un único fichero .DOCX.

Yo tengo por ejemplo. Doc1.docx, Doc2.docx, Doc3.docx, Doc4.docx, Doc5.docx,
etc y lo que quiero es combinarlos todos en un solo documento .docx,
MAIN.DOCX,
es decir: Main.docx = Doc1.docx + Doc2.docx + Doc3.docx + ...

Gracias

Un Saludo

Pedro
 

Leer las respuestas

#1 Alberto Poblacion
15/01/2009 - 17:25 | Informe spam
"Pedro Hueso" wrote in message
news:u%
Tengo varios ficheros de Microsoft Word 2007 .docx creados.

Necesito hacer un programa en C# y OpenXML que combine o añada todos estos
documentos en un único fichero .DOCX.

Yo tengo por ejemplo. Doc1.docx, Doc2.docx, Doc3.docx, Doc4.docx,
Doc5.docx, etc y lo que quiero es combinarlos todos en un solo documento
.docx, MAIN.DOCX,
es decir: Main.docx = Doc1.docx + Doc2.docx + Doc3.docx + ...



El docx es en realidad un .zip que contiene dentro varios archivos xml.
De hecho, puedes renombrarlo a .zip y extraer el contenido para comprobarlo.
Para combinar tus archivos docx, tendrás que saber cuáles de estos
archivos xml tienen las partes relevantes e irlos juntando, creando un nuevo
xml con toda la información. Para ello, necesitarás conocer la
especificación del docx, que Microsoft ha hecho pública.

Tienes aquí información sobre el Open XML Format SDK, que te permite usar
System.IO.Package:
http://msdn.microsoft.com/en-us/library/bb456487(office.14).aspx

Otros enlaces:

Artículo de CodeProject:
http://www.codeproject.com/KB/offic...DOCXs.aspx

How to: Manipulate Office Open XML Formats Documents:
http://msdn.microsoft.com/en-us/lib...82683.aspx

Office Open XML C# Library:
http://officeopenxml.sourceforge.net/

Preguntas similares