Aspose.Cells for Java frente a competidores de código abierto

Descripción general

La mayoría de los escenarios comerciales exigen informes sofisticados que sean ricos en contenido y se centren en las necesidades de las decisiones o tareas específicas para las que la gerencia general los usará. También requieren algún medio de recopilación de datos, análisis e interfaz con sistemas de bases de datos.

Una solución común es el uso de hojas de cálculo para la recopilación y el análisis de datos y como herramienta de presentación. La solución debería ser capaz de crear archivos de Excel Microsoft con formato completo que puedan analizar un escenario comercial e, idealmente, ampliar estas características básicas para explorar los procesos de captura y exportación de datos a otras aplicaciones de oficina ampliamente utilizadas. Estos desarrollos pueden incluir el uso de las características y funciones integradas de Microsoft Excel.

Nos encontramos con diferentes componentes de hojas de cálculo en el mercado actual que realmente prometen API ricas en funciones para la gestión de hojas de cálculo. Aquí, hacemos un análisis de características de Aspose.Cells for Java en comparación con sus competidores de código abierto JExcelAPI y HSSF de POI. Permítanme darles una introducción de los tres primeros.

Aspose.Cells for Java

Aspose.Cells for Java es un componente flexible que permite que las aplicaciones Java creen y administren hojas de cálculo de Excel sin Microsoft Excel instalado en el sistema (cliente o servidor). A diferencia de productos similares de otros proveedores, Aspose.Cells for Java no solo admite la generación de hojas de cálculo y funciones básicas de formateo de archivos, sino también una serie de funciones avanzadas. Estas funciones avanzadas facilitan a los desarrolladores la manipulación del contenido de las hojas de cálculo, el formato de celdas y las opciones de protección de archivos.

Aspose.Cells for Java también puede importar datos a hojas de cálculo desde diferentes fuentes de datos, agregar fórmulas y funciones matemáticas, de fecha/hora, financieras, de texto comunes y complejas, importar imágenes (se admiten todos los formatos principales, incluidos BMP, GIF, JPG, PNG, WMF, EMF y más), crear comentarios, crear objetos de dibujo y controles, y realizar una variedad de otras tareas.

Aspose.Cells for Java también admite complementos, VBA y macros.

Abrir y guardar

Además de admitir funciones comunes como crear o leer archivos de Excel nativos, Aspose.Cells for Java también ofrece muchas funciones valiosas, como guardar y abrir archivos de Excel (Excel 97 - Excel 2007) hacia y desde flujos, importar y exportar datos desde un ResultSet y una matriz,

Aspose.Cells puede importar gráficos, rangos con nombre, encabezados y pies de página con todos los atributos que Microsoft proporciona Excel, insertar hipervínculos e imágenes e importar fórmulas desde una hoja de cálculo de diseñador.

Formateo

El formato de datos de la hoja de trabajo es importante porque puede cambiar el significado de sus datos. Si planea imprimir una hoja de trabajo, enviarla por correo electrónico a los clientes o mostrársela a su jefe, debe pensar si tiene un formato que sea fácil de ver. El uso cuidadoso del color, el sombreado, los bordes, las fuentes, el formato de los números, la alineación, la sangría y la orientación pueden marcar la diferencia entre una cantidad desordenada de datos y una hoja de trabajo con la que es fácil trabajar y comprender.

Aspose.Cells for Java brinda la flexibilidad de dibujar bordes alrededor de celdas y rangos de celdas fácilmente. Además, AIP puede aplicar configuraciones de fuente (familia y tipo, estilo, tamaño, color y alineación) y sombrear celdas con patrones de fondo. El API es lo suficientemente eficiente como para dar formato a una fila o columna completa, establecer alineaciones, ajustar y rotar el texto en las celdas.

Aspose.Cells for Java admite todo tipo de formatos de números, incluido el formato general, números en notaciones decimales, símbolos de moneda, porcentajes, formato científico, valores de fecha/hora e incluso formatos de números personalizados.

Aspose.Cells permite a los desarrolladores ajustar automáticamente filas y columnas en una sola acción, así como configurar todo tipo de opciones de configuración de página en un conveniente API: márgenes superior, izquierdo, inferior, derecho, de encabezado y pie de página, orientación (vertical u horizontal) escala, tamaño del papel, área de impresión, repetición de filas y columnas y mucho más.

Características unicas

También hay una serie de características únicas que los desarrolladores solo encontrarán en Aspose.Cells for Java, por ejemplo, soporte para una amplia gama de formatos que incluyen XLS, XLT, XLSX, CSV, SpreadsheetML, delimitado por tabuladores, TXT, XML y 0761834

El API también permite a los desarrolladores agregar una copia de una hoja de trabajo existente (con contenido completo, imágenes y gráficos) a un archivo, establecer un fondo degradado para los gráficos a través del API, crear comentarios, establecer la configuración regional y regional, filtros automáticos y saltos de página. , establezca fórmulas complejas, formato condicional, todo tipo de opciones de protección introducidas en Microsoft Excel XP o superior, y manipule rangos con nombre.

Además, Aspose.Cells agrega un gráfico personalizado API y un motor de cálculo de fórmula eficiente.

Prueba Aspose.Cells for Java

Aspose.Cells for Java tiene una enorme lista de funciones. Para obtener más información sobre las funciones y la Guía del programador, consultela documentación ydemostraciones en línea.

Pruebe el componente para ver la diferencia entre él y sus competidores. La versión de evaluación es totalmente gratuita sin ninguna limitación de tiempo.Descargar la versión de evaluación de forma gratuita.

Otras API

JExcelAPI

JExcelAPI es un Java API que se utiliza para leer, escribir y modificar hojas de cálculo de Excel. Es un código abierto Java API que permite a los desarrolladores Java leer hojas de cálculo de Excel y generar hojas de cálculo de Excel dinámicamente. Además, contiene un mecanismo que permite a las aplicaciones Java leer una hoja de cálculo, modificar celdas y escribir la nueva hoja de cálculo.

Al momento de escribir, tiene un conjunto limitado de características. Admite: lectura y escritura de archivos de Excel nativos Microsoft (Excel97-2003) en formato de archivo XLS solamente. Tiene cierto soporte de cálculo de fórmula limitado. Puede manipular fuentes, admitir formato de números y fechas, modificar hojas de trabajo existentes, configuraciones locales, conservar gráficos (pero no permite a los desarrolladores crear o manipular gráficos), insertar imágenes, etc.

Soporte gráfico limitado

JExcelApi tiene soporte limitado para gráficos: no admite la creación y manipulación de gráficos. Al copiar una hoja de cálculo que contiene un gráfico, el gráfico se escribe en la hoja de cálculo generada (siempre que la hoja que contiene el gráfico contenga otros datos además del gráfico). Toda la información de la imagen se conserva al copiar archivos de Excel; sin embargo, al agregar una imagen a una hoja de cálculo, solo se admiten las imágenes en formato PNG.

No se pueden copiar hojas de trabajo

No hay API para copiar hojas de trabajo dentro o entre libros de trabajo directamente. Esta tarea se puede realizar de forma indirecta, pero requiere algo de trabajo. Por ejemplo, usando bucles, copie celda por celda con el método WritableCell.copyTo(), que producirá una copia profunda. Sin embargo, el formato solo se copia superficialmente, por lo que deberá obtener el formato de celda y usar el constructor de copia de eso, y luego llamar a WritableCell.setCellFormat() en la celda que acaba de copiar. Es un trabajo bastante grande.

Sin optimización

Otra limitación es que JExcelAPI no realiza optimizaciones para reducir el tamaño del archivo, no debería sorprendernos ver un archivo de salida generado por el componente con un tamaño enorme en MB.

JExcelAPI no tiene API para filas o columnas de ajuste automático. Deberá escribir un código que escanee las celdas de cada columna, calcule la longitud máxima y luego haga llamadas a WritableSheet.setColumnView() y Writable Sheet.setRowView() en consecuencia.

Funciones que faltan

También hay algunos obstáculos más: el API no admite tablas dinámicas ni listas desplegables. Tiene opciones de validación limitadas para establecer en las celdas. La configuración de página y las opciones de impresión no son completamente compatibles, por ejemplo, la repetición de filas y columnas y no todos los tipos de opciones de protección (incluidas las hojas relacionadas con la protección con contraseña) son compatibles. Tampoco es compatible con la clasificación de datos, el filtrado automático de datos, el formato condicional, los objetos de dibujo, los controles y muchas otras características valiosas.

POI-HSSF

HSSF es el componente de POI que lee y escribe hojas de cálculo de Excel. Tiene un conjunto ampliado de funciones en comparación con JExcelAPI, incluida la lectura y escritura de archivos de Excel nativos Microsoft (el formato de archivo Excel97-2003 - XLSX OOXML aún no es compatible), formato de celdas (formatos de números, fuentes, colores, bordes, alineaciones, etc.) , combinar celdas, opciones de configuración de página, importar imágenes, formas, rangos con nombre, crear comentarios, encabezados y pies de página, hipervínculos, filas y columnas de ajuste automático, etc.

Soporte gráfico limitado

Existen algunas limitaciones conocidas para el POI-HSSF API. Por ejemplo, actualmente no puede crear gráficos. Sin embargo, puede crear un gráfico en Excel, modificar los valores de datos del gráfico usando HSSF y escribir una nueva hoja de cálculo. Otro es el soporte de tablas dinámicas, no es posible generar tablas dinámicas.

Cálculo de fórmula

Aunque org.apache.poi.hssf.usermodel de POI admite fórmulas, carece de un motor de cálculo de fórmulas enriquecido. Admite fórmulas que contienen cadenas de referencias de celdas, enteros y literales de punto flotante, referencias relativas o absolutas, operadores aritméticos y lógicos, pero no admite fórmulas de matriz, operadores unarios y referencias 3D.

Funciones que faltan

HSSF API tampoco admite tablas dinámicas. Tiene opciones limitadas de validación de datos para configurar en las celdas. Tampoco es compatible con funciones como la clasificación de datos y el filtrado automático de datos.

Comparación de características

La siguiente tabla intenta proporcionar una descripción general de las funciones sobre cómo Aspose.Cells for Java se compara con los componentes de código abierto (mencionados anteriormente), aunque no cuestiona cubrir todas las funciones proporcionadas por los productos involucrados. Este es solo un esquema que se toma en un momento específico y es muy posible que las funciones que faltan se admitan cuando lea el documento.

Rasgo JExcelAPI HSSF de puntos de interés Aspose.Cells for Java
Formatos de archivo
Leer y escribir formatos de archivo (XLS, XLT, XLSX, CSV, SpreadsheetML, delimitado por tabulaciones, TXT, XML y HTML) parcialmente compatible parcialmente compatible Soportado
Abra el archivo y guárdelo en una secuencia Soportado
Convertir archivo de Excel a documento PDF Soportado
Archivos protegidos con contraseña Soportado Soportado
Manipular el contenido de la hoja de cálculo
Modificar las propiedades del documento de los archivos de Excel Soportado
Exportar datos de la hoja de trabajo a una matriz Soportado
Importar datos de un ResultSet Soportado
Importar datos de una matriz, colección Soportado
Agregue una copia de la hoja de trabajo existente (todo el contenido, incluidas imágenes y gráficos) parcialmente compatible parcialmente compatible Soportado
Importar imágenes Soportado
Importar gráficos Soportado
Establecer fondo degradado para gráficos usando API Soportado
Proteger la hoja de trabajo, incluidos los contenidos, los objetos y los escenarios. parcialmente compatible Soportado Soportado
Crear filtros automáticos usando API Soportado
Funciones de configuración de página (márgenes superior, izquierdo, inferior, derecho, encabezado y pie de página, orientación: vertical u horizontal, escala, tamaño del papel, área de impresión, filas y columnas repetidas) parcialmente compatible Soportado Soportado
La página horizontal y vertical se rompe a través del API Soportado Soportado Soportado
Copie y mueva hojas de trabajo dentro y entre libros de trabajo Soportado Soportado
Insertar y eliminar filas y columnas Soportado Soportado
Filas y columnas de ajuste automático Soportado Soportado
Copiar filas y columnas Soportado
clasificación de datos Soportado
Rastrear precedentes y dependientes Soportado
Filtrado automático Soportado
Validación de datos (todos los tipos) parcialmente compatible parcialmente compatible Soportado
Importar fórmulas desde la hoja de cálculo del diseñador parcialmente compatible parcialmente compatible Soportado
Establecer fórmulas complejas a través del API Soportado
Formato condicional Soportado Soportado
Activando hojas y haciendo un Cell activo en el libro de trabajo. Soportado Soportado Soportado

|Características avanzadas|||| | Marcadores inteligentes||| Soportado| | Cree gráficos estándar (columna, barra, línea, pastel, dispersión, área, anillo, radar, superficie 3D, burbuja, stock, cilindro, cono, pirámide, etc.)||| Soportado| | Gráfico personalizado API||| Soportado| | Configuración de propiedades del documento||| Soportado| | Opciones avanzadas de protección de Excel XP||| Soportado| | Complementos, VBA, macros||| Soportado| | Manipular rangos con nombre| Soportado| Soportado| Soportado| | Tablas dinamicas||| Soportado| | Cree objetos de dibujo, formas y controles comunes|| Soportado| Soportado| |Insertar controles en gráficos||| Soportado| | Motor de cálculo de fórmulas||| Soportado| | Encuentra API| Soportado| Soportado| Soportado|