Red de conocimiento informático - Conocimiento informático - ¿Cómo guardar archivos adjuntos (objetos incrustados) en Word mediante programación? ¿Alguna vez has usado Word para guardarlo en formato docx, descomprimirlo y luego analizar las incrustaciones?

¿Cómo guardar archivos adjuntos (objetos incrustados) en Word mediante programación? ¿Alguna vez has usado Word para guardarlo en formato docx, descomprimirlo y luego analizar las incrustaciones?

1. No entiendo por qué es necesario descomprimirlo. Quizás LZ quiera extraer varios "objetos" en Word

Incluidos Word, ppt, excel, etc. luego extraiga Estos archivos adjuntos se "guardan como" archivos separados. Si este es el caso, puede consultar: Insertar un objeto de Excel existente en Word?oMissing?=?System.Reflection.Missing.Value;

p>

Microsoft.Office.Interop.Word.Application?word?=?

new?Microsoft.Office.Interop.Word.Application();//Crear objeto de palabra

word.Visible?=?true; //mostrar

Microsoft.Office.Interop.Word.Document?dcu?=?

palabra. Documents.Add(ref? oMissing,?ref?oMissing,

ref?oMissing,?ref?oMissing); //Crea un nuevo documento vacío con el formato predeterminado

dcu. Activate(); //Activar el documento actual

object?type?=?@"Excel.Sheet.12"; //¿El formato Excel insertado, aquí uso Excel?2010, entonces es .12

object?filename?=?@"C:\list.xlsx";// La ubicación del Excel insertado

word.Selection.InlineShapes.AddOLEObject(

ref?type,?ref?filename,?ref?oMissing,?ref?oMissing); //Realiza la operación de inserción

Entonces solo necesitas realizar la operación opuesta, por lo que La clave aquí es obtener el objeto de colección Document .InlineShapes, a través del cual se identifica el "objeto" insertado, y luego estos objetos se convierten al tipo apropiado y se guardan mediante el método SaveAs

2. a docx, el principio es similar. El método es abrir el documento con C# bajo la premisa de que word2007 (versión del componente office12) está instalado y luego usar el método SaveAs para convertirlo al formato docx (2007)