Aspose.Cells for Java Vs Competitori Open Source

Panoramica

La maggior parte degli scenari aziendali richiede report sofisticati ricchi di contenuti e focalizzati sui bisogni delle specifiche decisioni o compiti che la direzione generale utilizzerà. Richiedono inoltre un modo per la raccolta dati, l’analisi e l’interfacciamento con i sistemi di database.

Una soluzione comune è utilizzare fogli di calcolo per la raccolta dati, l’analisi e come strumento di presentazione. La soluzione dovrebbe essere in grado di creare file Microsoft Excel completamente formattati in grado di analizzare uno scenario aziendale e, idealmente, estendere queste funzionalità di base per esplorare i processi di acquisizione ed esportazione dati verso altre applicazioni per ufficio ampiamente utilizzate.

Oggi ci imbattiamo in diversi componenti per fogli di calcolo che promettono API ricche di funzionalità per la gestione dei fogli di calcolo. Qui, facciamo un’analisi delle funzionalità di Aspose.Cells for Java rispetto ai suoi concorrenti open source JExcelAPI e HSSF di POI. Permettimi di darti una breve introduzione dei tre primi.

Aspose.Cells for Java

Aspose.Cells for Java è un componente flessibile che consente alle applicazioni Java di creare e gestire fogli di calcolo Excel senza Microsoft Excel installato sul sistema (client o server). A differenza di prodotti simili di altri fornitori, Aspose.Cells for Java supporta non solo la generazione di fogli di calcolo e le funzionalità di formattazione di base del file, ma anche diverse funzionalità avanzate. Queste funzionalità avanzate semplificano il lavoro agli sviluppatori per manipolare i contenuti del foglio di calcolo, la formattazione delle celle e le opzioni di protezione del file.

Aspose.Cells for Java può anche importare dati nei fogli di calcolo da diverse fonti di dati, aggiungere formule e funzioni matematiche, data/ora, finanziarie, di testo, importare immagini (sono supportati tutti i principali formati tra cui BMP, GIF, JPG, PNG, WMF, EMF e altri), creare commenti, creare oggetti e controlli di disegno e svolgere una serie di altre attività.

Aspose.Cells for Java supporta anche componenti aggiuntivi, VBA e macro.

Apri e Salva

Oltre al supporto delle funzionalità comuni come la creazione o la lettura di file nativi di Excel, Aspose.Cells for Java offre molte funzionalità preziose come salvare e aprire file di Excel (Excel 97 - Excel 2007) da e verso stream, importare ed esportare dati da un ResultSet e un array.

Aspose.Cells può importare grafici, intervalli nominati, testate e piè di pagina con tutti gli attributi forniti da Microsoft Excel, inserire collegamenti ipertestuali e immagini e importare formule da un foglio di calcolo di progettazione.

Formattazione

La formattazione dei dati del foglio di lavoro è importante perché può modificare il significato dei tuoi dati. Se hai intenzione di stampare un foglio di lavoro, inviarlo via email ai clienti o mostrarlo al tuo capo, devi pensare se è formattato in modo che sia facile da visualizzare. Un uso attento del colore, dell’ombreggiatura, dei bordi, dei caratteri, della formattazione dei numeri, dell’allineamento, dell’indentazione e dell’orientamento può fare la differenza tra un groviglio di dati e un foglio di lavoro facile da utilizzare e comprendere.

Aspose.Cells for Java fornisce la flessibilità di disegnare facilmente i bordi intorno alle celle e agli intervalli di celle. Inoltre, l’AIP può applicare impostazioni dei caratteri (famiglia e tipo, stile, dimensione, colore e allineamento) e sfumare le celle con motivi di sfondo. L’API è abbastanza efficiente da poter formattare una riga o colonna completa, impostare gli allineamenti, avvolgere e ruotare il testo nelle celle.

Aspose.Cells for Java supporta tutti i tipi di formati numerici, compreso il formato generale, i numeri in notazioni decimali, i simboli delle valute, le percentuali, il formato scientifico, i valori data/ora e persino i formati numerici personalizzati.

Aspose.Cells consente ai programmatori di adattare automaticamente righe e colonne in un’unica azione, nonché configurare tutti i tipi di opzioni di impostazione di pagina in un’API conveniente: margini superiore, sinistro, inferiore e destro, testa e piè di pagina, orientamento - verticale o orizzontale - ridimensionamento, dimensione carta, area di stampa, righe e colonne ripetute e molto altro ancora.

Funzionalità Uniche

Ci sono anche diverse funzionalità uniche che i programmatori troveranno solo in Aspose.Cells for Java, ad esempio il supporto per una vasta gamma di formati tra cui XLS, XLT, XLSX, CSV, SpreadsheetML, delimitato da tabulazioni, TXT, XML e HTML.

L’API consente anche ai programmatori di aggiungere una copia di un foglio di lavoro esistente (con tutti i contenuti, immagini e grafici) a un file, impostare lo sfondo a gradiente per i grafici tramite l’API, creare commenti, impostare le impostazioni locali e regionali, i filtri automatici e gli interruzioni di pagina, impostare formule complesse, formattazione condizionale, tutti i tipi di opzioni di protezione introdotte in Microsoft Excel XP o successivo e manipolare intervalli nominati.

Inoltre, Aspose.Cells aggiunge un’API personalizzata per i grafici e un efficiente motore di calcolo delle formule.

Prova Aspose.Cells for Java

Aspose.Cells for Java ha un’enorme lista di funzionalità. Per saperne di più sulle funzionalità e per la Guida del Programmatore, si prega di consultare la documentazione e dimostrazioni online.

Si prega di provare il componente per vedere la differenza tra esso e i suoi concorrenti. La versione di valutazione è totalmente gratuita e senza limiti di tempo. Scarica la versione di valutazione gratuitamente.

Altre API

JExcelAPI

JExcelAPI è un’API Java utilizzata per leggere, scrivere e modificare fogli di calcolo Excel. È un’API Java open source che consente ai programmatori Java di leggere fogli di calcolo Excel e generare dinamicamente fogli di calcolo Excel. Inoltre, contiene un meccanismo che consente alle applicazioni Java di leggere un foglio di calcolo, modificare celle e scrivere il nuovo foglio di calcolo.

Al momento della scrittura, ha un insieme limitato di funzionalità. Supporta: la lettura e la scrittura di file nativi di Microsoft Excel (Excel97-2003) solo nel formato file XLS. Ha un supporto limitato per il calcolo delle formule. Può manipolare i caratteri, supportare la formattazione dei numeri e delle date, modificare i fogli di lavoro esistenti, impostazioni locali, mantenere i grafici (ma non consente ai programmatori di creare o manipolare grafici), inserire immagini e così via.

Supporto limitato ai grafici

JExcelApi ha un supporto limitato per i grafici: non supporta la creazione e la manipolazione dei grafici. Quando si copia un foglio di calcolo contenente un grafico, il grafico viene scritto nel foglio di calcolo generato (a condizione che il foglio contenente il grafico contenga anche altri dati oltre al grafico). Tutte le informazioni sull’immagine vengono conservate durante la copia dei file di Excel, tuttavia, quando si aggiunge un’immagine a un foglio di calcolo, sono supportate solo le immagini in formato PNG.

Impossibile copiare i fogli di lavoro

Non c’è un’API per copiare direttamente i fogli di calcolo all’interno o tra i notebook. Questo compito può essere fatto in modo indiretto, ma richiede un certo lavoro. Ad esempio, utilizzando cicli, copiare cella per cella con il metodo WritableCell.copyTo(), che produrrà una copia profonda. Tuttavia, il formato viene copiato solo superficialmente, quindi sarà necessario ottenere il formato della cella e utilizzare il costruttore di copia di questo, e quindi chiamare WritableCell.setCellFormat() sulla cella appena copiata. È un lavoro piuttosto grande.

Nessuna ottimizzazione

Un’altra limitazione è che JExcelAPI non esegue ottimizzazioni per ridurre le dimensioni del file, non dovremmo essere sorpresi di vedere un file di output generato dal componente con dimensioni enormi in MB.

JExcelAPI non ha un’API per adattare automaticamente le righe o le colonne. Sarà necessario scrivere del codice che esamina le celle in ogni colonna, calcola la lunghezza massima e quindi fare chiamate a WritableSheet.setColumnView() e WritableSheet.setRowView() di conseguenza.

Funzionalità Mancanti

Ci sono anche alcuni ostacoli: l’API non supporta tabelle pivot e elenchi a discesa. Ha opzioni di convalida limitate da impostare sulle celle. Le opzioni di impostazione pagina e di stampa non sono completamente supportate, ad esempio righe e colonne di ripetizione e non tutti i tipi di opzioni di protezione (compresi i fogli correlati alla protezione con password) sono supportati. Non supporta neanche la classificazione dei dati, il filtraggio automatico dei dati, la formattazione condizionale, gli oggetti disegno, i controlli e molte altre funzionalità preziose.

POI-HSSF

HSSF è il componente di POI che legge e scrive fogli di calcolo Excel. Ha un insieme esteso di funzionalità rispetto a JExcelAPI, inclusa la lettura e la scrittura di file nativi di Microsoft Excel (Excel97-2003 - il formato file XLSX OOXML non è ancora supportato), la formattazione delle celle (formati numerici, caratteri, colori, bordi, allineamenti, ecc.), unione di celle, opzioni di impostazione pagina, importazione di immagini, forme, intervalli nominati, creazione di commenti, testate e piè di pagina, collegamenti ipertestuali, adattamento automatico delle righe e delle colonne, ecc.

Supporto limitato ai grafici

Ci sono alcune limitazioni note per l’API POI-HSSF. Ad esempio, al momento non è possibile creare grafici. Tuttavia, è possibile creare un grafico in Excel, modificare i valori dei dati del grafico utilizzando HSSF e scrivere un nuovo foglio di calcolo. Un’altra limitazione riguarda il supporto alle tabelle pivot, non è possibile generare tabelle pivot.

Calcolo delle formule

Anche se l’org.apache.poi.hssf.usermodel di POI supporta le formule, manca un motore di calcolo delle formule completo. Supporta formule contenenti riferimenti a celle stringa, interi e numeri decimali, riferimenti assoluti o relativi, operatori aritmetici e logici ma non supporta formule di matrice, operatori unari e riferimenti tridimensionali.

Funzionalità Mancanti

L’API HSSF non supporta neanche le tabelle pivot. Ha opzioni limitate di convalida dei dati da impostare sulle celle. Inoltre, non supporta funzionalità come il ordinamento dei dati e il filtro automatico dei dati.

Confronto delle Funzionalità

La tabella seguente cerca di fornire una panoramica delle funzionalità su come Aspose.Cells for Java si confronta con i componenti open source (sopra menzionati) anche se non punta a coprire tutte le funzionalità fornite dai prodotti coinvolti. Si tratta solo di un’analisi che è stata fatta in un momento specifico ed è possibile che le funzionalità mancanti potrebbero essere supportate quando si leggerà il documento.

Funzionalità JExcelAPI HSSF di POI Aspose.Cells for Java
Formati dei file      
Lettura e scrittura di formati di file (XLS, XLT, XLSX, CSV, SpreadsheetML, Tab Delimited, TXT, XML e HTML) Parzialmente supportato Parzialmente supportato Supportato
Aprire un file e salvarlo in uno stream     Supportato
Convertire un file Excel in documento PDF     Supportato
File protetti da password   Supportato Supportato
Manipolare il contenuto del foglio di calcolo      
Modificare le proprietà del documento dei file Excel     Supportato
Esportare i dati del foglio di lavoro in un array     Supportato
Importare dati da un ResultSet     Supportato
Importare dati da un array, collezione     Supportato
Aggiungere una copia del foglio di calcolo esistente (tutti i contenuti inclusi immagini e grafici) Parzialmente supportato Parzialmente supportato Supportato
Importare immagini     Supportato
Importa grafici     Supportato
Imposta sfondo a gradiente per i grafici utilizzando l’API     Supportato
Proteggi il foglio di calcolo, inclusi contenuti, oggetti e scenari Parzialmente supportato Supportato Supportato
Crea filtri automatici utilizzando l’API     Supportato
Funzionalità di impostazione della pagina (margine superiore, sinistro, inferiore, destro, intestazione e piè di pagina, orientamento - verticale o orizzontale, ridimensionamento, formato carta, area di stampa, righe e colonne ripetute) Parzialmente supportato Supportato Supportato
Interruzioni di pagina orizzontali e verticali tramite l’API Supportato Supportato Supportato
Copia e sposta i fogli di calcolo all’interno e tra i workbooks   Supportato Supportato
Inserimento e eliminazione di righe e colonne Supportato   Supportato
Adatta automaticamente righe e colonne   Supportato Supportato
Copia righe e colonne     Supportato
Ordinamento dei dati     Supportato
Traccia precedenti e dipendenti     Supportato
Filtraggio automatico     Supportato
Convalida dei dati (tutti i tipi) Parzialmente supportato Parzialmente supportato Supportato
Importa formule dal foglio di lavoro del designer Parzialmente supportato Parzialmente supportato Supportato
Imposta formule complesse tramite API     Supportato
Formattazione condizionale   Supportato Supportato
Attivazione dei fogli e rendere attiva una cella nel foglio di lavoro. Supportato Supportato Supportato
Funzionalità avanzate      
Marcatori intelligenti     Supportato
Crea grafici standard (istogramma, barra, linea, torta, scatter, area, ciambella, radar, superficie 3D, bolle, stock, cilindro, cono, piramide ecc.)     Supportato
API grafico personalizzato     Supportato
Impostazioni delle proprietà del documento     Supportato
Opzioni di protezione avanzate di Excel XP     Supportato
Add-in, VBA, macro     Supportato
Manipolare intervalli nominati Supportato Supportato Supportato
Tabelle pivot     Supportato
Crea oggetti di disegno comuni, forme e controlli Supportato Supportato
Inserire controlli nei grafici Supportato
Motore di calcolo delle formule Supportato
Trova API Supportato Supportato Supportato