Apache POI es una biblioteca Java de código abierto para crear y manipular varios formatos de archivo basados en Microsoft Office. Usando POI, uno debería poder realizar operaciones de creación, modificación y visualización/lectura en los siguientes formatos de archivo. Por ejemplo, Java no proporciona soporte integrado para trabajar con archivos de Excel, por lo que debemos buscar API de código abierto para el trabajo.
Apache POI proporciona la API de Java para manipular varios formatos de archivo basados en el estándar Office Open XML (OOXML) y el estándar OLE2 de Microsoft. Las versiones de Apache POI están disponibles bajo la Licencia de Apache (V2.0).
Algunas características importantes de Apache POI son las siguientes:
- Apache POI proporciona procesamiento basado en secuencias, que es adecuado para archivos grandes y requiere menos memoria.
- Apache POI es capaz de manejar formatos de hojas de cálculo tanto XLS como XLSX.
- Apache POI contiene la implementación HSSF para el formato de archivo Excel ’97 (-2007), es decir, XLS.
- La implementación de Apache POI XSSF debe usarse para el formato de archivo Excel 2007 OOXML (.xlsx).
- Apache POI HSSF y XSSF API proporcionan mecanismos para leer, escribir o modificar hojas de cálculo de Excel.
- Apache POI también proporciona la API SXSSF que es una extensión de XSSF para trabajar con hojas de Excel muy grandes.
- La API SXSSF requiere menos memoria y es adecuada cuando se trabaja con hojas de cálculo muy grandes y la memoria del montón es limitada.
- Hay dos modelos para elegir: el modelo de evento y el modelo de usuario. El modelo de eventos requiere menos memoria porque el archivo de Excel se lee en tokens y requiere procesamiento. El modelo de usuario está más orientado a objetos y es fácil de usar.
- Apache POI brinda un excelente soporte para funciones adicionales de Excel, como trabajar con fórmulas, crear estilos de celda llenando colores y bordes, fuentes, encabezados y pies de página, validaciones de datos, imágenes, hipervínculos, etc.
Componentes comúnmente utilizados de Apache POI
- HSSF (formato de hoja de cálculo horrible) : se utiliza para leer y escribir en formato xls de archivos MS-Excel.
- XSSF (formato de hoja de cálculo XML) : se utiliza para el formato de archivo xlsx de MS-Excel.
- POIFS (Sistema de archivo de implementación de ofuscación deficiente) : este componente es el factor básico de todos los demás elementos de POI. Se utiliza para leer diferentes archivos de forma explícita.
- HWPF (Horrible Word Processor Format) : se utiliza para leer y escribir archivos de extensión doc de MS-Word.
- HSLF (Horrible Slide Layout Format) : se utiliza para leer, crear y editar presentaciones de PowerPoint.
Ambiente
Dependencias de tiempo de ejecución de PDI de Apache: si está trabajando en un proyecto de Maven , puede incluir la dependencia de PDI en el archivo pom.xml utilizando el siguiente conjunto de líneas de código.
<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.9</version> </dependency>
Ahora, para agregar esto en eclipse, vaya a
Window -> Show View -> Other -> Maven -> Maven Repositories
Si no está utilizando maven, puede descargar archivos jar de maven desde la página de descarga de POI . Incluya los siguientes archivos jar como mínimo para ejecutar el código de muestra:
- poi-3.10-FINAL.jar
- poi-ooxml-3.10-FINAL.jar
- commons-códec-1.5.jar
- poi-ooxml-schemas-3.10-FINAL.jar
- xml-apis-1.0.b2.jar
- stax-api-1.0.1.jar
- xmlbeans-2.3.0.jar
- dom4j-1.6.1.jar
Siga este enlace para ver cómo agregar frascos externos en eclipse.
Este artículo es una contribución de Pankaj Kumar . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks. Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA