Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 49496|Respuesta: 2

[Fuente] Explicación detallada de la operación de Excel NPOI

[Copiar enlace]
Publicado el 16-05-2021 21:04:14 | | | |
NPOI puede leer y escribir documentos en Word o Excel sin Office instalado. NPOI es un proyecto de código abierto en C# para leer y escribir documentos componentes de Microsoft OLE2, como Excel y WORD.
Revisión:

Juicio NPOI sobre el tipo de fecha de la celda
https://www.itsvse.com/thread-9649-1-1.html

Importar imágenes a hojas de Excel usando NPOI [con código fuente]
https://www.itsvse.com/thread-9477-1-1.html

NPOI establece el ancho y la altura de las celdas
https://www.itsvse.com/thread-3522-1-1.html

. Operación de lectura y escritura NPOI complemento de tabla de Excel para Net
https://www.itsvse.com/thread-2288-1-1.html

Nombre de la Asamblea
Módulos/espacios de nombres
ilustrar
NPOI.DLL
NPOI. POIFS
Biblioteca de lectura/escritura de atributos de documentos OLE2/ActiveX
NPOI.DLL
NPOI. DDF
Biblioteca de lectura/escritura de dibujo de Microsoft Office
NPOI.DLL
NPOI. HPSF
Biblioteca de lectura/escritura de documentos OLE2/ActiveX
NPOI.DLL
NPOI. HSSF
Biblioteca de lectura/escritura en formato BIFF de Microsoft Excel (Excel 97-2003, doc)
NPOI.DLL
NPOI. SS
Interfaz pública de Excel y motor de cálculo de fórmulas de Excel
NPOI.DLL
NPOI. Util
La biblioteca básica proporciona muchas funciones útiles para el desarrollo de otros proyectos de formato de lectura/escritura de archivos
NPOI. OOXML.DLL
NPOI. XSSF
Biblioteca de lectura y escritura en formato Excel 2007 (xlsx)
NPOI. OOXML.DLL
NPOI. XWPF
Biblioteca de lectura/escritura en formato Word 2007 (docx)
NPOI. OpenXml4Net.DLL
NPOI. OpenXml4Net
Biblioteca de lectura y escritura de paquetes zip subyacentes OpenXml
NPOI. OpenXmlFormats.DLL
NPOI. OpenXmlFormatos
Biblioteca de relaciones de objetos OpenXml de Microsoft Office

HSSFWorkbook: es una versión de Excel 2003 o anterior (incluyendo 2003) con una extensión .xls
XSSFWorkbook: es la versión de Excel 2007 con .xlsx extensión
Reconoce automáticamente las versiones de Excel

Al leer Excel, npoi llama a WorkbookFactory.Create para reconocer automáticamente la versión:



Dirección del código fuente:El inicio de sesión del hipervínculo es visible.



Código de implementación:

XSSFWorkbook 2007 lanza una excepción No puede acceder a un flujo cerrado



Código de prueba:



Al exportar un archivo a un flujo, llamar al método Write lanza una excepción:



Excepción no gestionada. System.ObjectDisposedException: No se puede acceder a un flujo cerrado.
   en System.IO.MemoryStream.Seek(desplazamiento Int64, localización SeekOrigin)

HSSFWorkbook no tiene este problema, y no hay forma de sobrecargar la escritura de la interfaz de IWorkbook, como se muestra en la figura siguiente:



PeroEl objeto XSSFWorkbook tendrá un parámetro leaveOpen adicional, dirección del código fuente:El inicio de sesión del hipervínculo es visible.



Solución 1:

Solución 2:

Crea un nuevo objeto NpoiMemoryStream y sobrescribe el método Close de la siguiente manera:

Úsalo de la siguiente manera:

Excepción de la hoja de copia XSSFWorkbook

Cuando la hoja es mi plantilla personalizada, llamar al método CopySheet generará la siguiente excepción:

Referencia de objeto no establecida como una instancia de un objeto.

Hoja de clonación usando CloneSheet, el código es el siguiente:



(Fin)




Anterior:Redis MISCONF Redis está configurado para guardar instantáneas RDB
Próximo:Cómo guardar un flujo en un archivo en C#/.NET
Publicado el 17-9-2021 09:46:51 |
kk learn
Publicado el 29-1-2023 15:03:59 |
Aprende de la pequeña zorra
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com