Cómo importar documentos de Word desde una base de datos SQL
1. Preparación
En primer lugar, confirme que Office Word esté instalado en el servidor (se utilizará Office XP como ejemplo a continuación), que el sistema operativo es win2000 o XP. , y ha sido configurado el entorno de ejecución .NET e instalado el entorno de desarrollo VS.NET C#, podemos abrir la aplicación web ASP.NET del proyecto VS.NET C#. La ubicación se muestra en la Figura 1. Figura 1)
2. Haga referencia al archivo de biblioteca de objetos de Word
Para operar Word, necesitamos el archivo de biblioteca de objetos de Word "MSWORD.OLB" (Word 2000 es MSWORD9.OLB). Generalmente se instala después de Office Word OLB" (MSWORD9.OLB para Word 2000. OLB), generalmente se instala después de Office Word. Este archivo se puede encontrar en la carpeta Office10 en el directorio de instalación de Office. Cuando introducimos este archivo en el proyecto, en este momento. , puede usar varias funciones operativas en el código fuente para operar Word. El método específico es abrir la barra de menú y agregar exploración de referencias en el proyecto, buscar MSWORD.OLB en el cuadro de diálogo "Seleccionar componente" que se abre y presionar Aceptar. Para presentar este archivo de biblioteca de objetos, vs.net convertirá automáticamente este archivo de biblioteca en un componente DLL, de modo que podamos operar Word simplemente creando el objeto del componente en el código fuente
3. aspx.cs code
Después de agregar la referencia, MSWORD.OLB se convirtió en el archivo DLL correspondiente y se colocó en el directorio BIN del proyecto, de modo que solo necesitamos crear el objeto en el código fuente. y utilice el archivo de biblioteca de Word. La función de operación incorporada puede realizar fácilmente el funcionamiento de Word. Consulte el código fuente de Webform1.aspx.cs
5. p>El archivo web.config también contiene. Debe agregar identidad impersonate="true"/ para habilitar la suplantación, porque de forma predeterminada los usuarios de ASPNET no tienen permiso para acceder a Word.ApplicationClass() cuando la identidad impersonate="true"/ es. habilitado, Word.ApplicationClass aparecerá "Word.aspx.cs" ApplicationClass (). Cuando la suplantación de identidad esté habilitada, todas las páginas utilizarán el nombre de usuario de la cuenta de usuario de Internet anónimo (IUSR_machinename) para ejecutar los permisos, para que podamos ejecutarlo con éxito. acceda a Word.ApplicationClass() y opere la cuenta de usuario de Word.Internet (IUSR_machinename).
p>// ¿La ruta donde se encuentra el documento entrante? Devolver contenido del documento
public?string?Doc2Text(string?docFileName)
{
//Crear COM
Microsoft.Office. Interop.Word.ApplicationClass?ApplicationClass?wordApp?=?new?Microsoft.Office.Interop.Word.ApplicationClass();
Objeto?fileobj?=?docFileName;
¿Objeto? nullobj?=?System.Reflection.Missing.Value;
/Abra el archivo especificado (el número de parámetros COM en diferentes versiones es diferente, en general, excepto el primero con nullobj) p>
Microsoft.Office.Interop.Word.Document?
ref?nullobj,?ref?nullobj,?ref?nullobj,
ref?nullobj,?ref nullobj, ?ref?nullobj
);
/Obtener el texto en el archivo doc
string?outText?=?doc.Content.Text;
/ p>
/Cerrar archivo
doc.Close(ref?nullobj,?nullobj,?ref?nullobj);
/Cerrar COM
wordApp .Quit(ref?nullobj, ?ref?nullobj, ?ref?nullobj);
/return
regresar En resumen, ¿la compatibilidad entre C# y Office? no es muy bueno
No olvides citar la palabra dll
Para citar la carpeta, haz clic derecho y agrega referencia. En Componentes, busque Microsoft.Office.Interop.Word
para leer el documento de Word y volver a colocarlo en la carpeta. Interop.Word
Lee documentos de Word y los escribe en la base de datos sql.server.