Aspose.Cells for Java Vs Concorrenti Open Source
Panoramica
La maggior parte degli scenari aziendali richiede report sofisticati ricchi di contenuti e incentrati sulle esigenze delle decisioni o attività specifiche per le quali la direzione generale li utilizzerà. Richiedono anche alcuni mezzi per la raccolta dei dati, l’analisi e l’interfacciamento con i sistemi di database.
Una soluzione comune è l’utilizzo di fogli di calcolo per la raccolta dei dati, l’analisi e come strumento di presentazione. La soluzione dovrebbe essere in grado di creare file Excel Microsoft completamente formattati in grado di analizzare uno scenario aziendale e, idealmente, estendere queste funzionalità di base per esplorare i processi di acquisizione ed esportazione dei dati in altre applicazioni per ufficio ampiamente utilizzate. Questi sviluppi possono includere l’utilizzo delle caratteristiche e delle funzioni integrate di Microsoft Excel.
Oggi sul mercato ci imbattiamo in diversi componenti per fogli di calcolo che promettono davvero API ricche di funzionalità per la gestione dei fogli di calcolo. Qui, facciamo un’analisi delle caratteristiche di Aspose.Cells for Java rispetto ai suoi concorrenti open source JExcelAPI e HSSF di POI. Permettetemi di fare prima un’introduzione dei tre.
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 che Microsoft Excel sia installato nel sistema (client o server). A differenza di prodotti simili di altri fornitori, Aspose.Cells for Java non solo supporta la generazione di fogli di calcolo e le funzionalità di base per la formattazione dei file, ma anche una serie di funzionalità avanzate. Queste funzionalità avanzate consentono agli sviluppatori di manipolare facilmente i contenuti dei fogli di calcolo, la formattazione delle celle e le opzioni di protezione dei file.
Aspose.Cells for Java può anche importare dati in fogli di calcolo da diverse fonti di dati, aggiungere formule e funzioni matematiche comuni e complesse, data/ora, finanziarie, di testo, importare immagini (sono supportati tutti i principali formati inclusi BMP, GIF, JPG, PNG, WMF, EMF e altro), creare commenti, creare oggetti di disegno e controlli ed eseguire una serie di altre attività.
Aspose.Cells for Java supporta anche componenti aggiuntivi, VBA e macro.
Apri e salva
Oltre a supportare funzionalità comuni come la creazione o la lettura di file Excel nativi, Aspose.Cells for Java offre anche molte funzionalità preziose come il salvataggio e l’apertura di file Excel (Excel 97 - Excel 2007) da e verso flussi, l’importazione e l’esportazione di dati da un ResultSet e un array,
Aspose.Cells può importare grafici, intervalli denominati, intestazioni 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 del designer.
Formattazione
La formattazione dei dati del foglio di lavoro è importante perché può modificare il significato dei dati. Se hai intenzione di stampare un foglio di lavoro, inviarlo tramite e-mail 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, del rientro e dell’orientamento può fare la differenza tra un ammasso disordinato di dati e un foglio di lavoro facile da utilizzare e da comprendere.
Aspose.Cells for Java offre la flessibilità di tracciare facilmente bordi attorno a celle e intervalli di celle. Inoltre l’AIP può applicare le impostazioni dei caratteri (famiglia e tipo, stile, dimensione, colore e allineamento) e ombreggiare le celle con motivi di sfondo. Lo API è abbastanza efficiente da poter formattare una riga o colonna completa, impostare allineamenti, avvolgere e ruotare il testo nelle celle.
Aspose.Cells for Java supporta tutti i tipi di formati numerici incluso il formato generale, i numeri in notazione decimale, i simboli di valuta, le percentuali, il formato scientifico, i valori di data/ora e persino i formati numerici personalizzati.
Aspose.Cells consente agli sviluppatori di adattare automaticamente righe e colonne in un’unica azione, nonché di configurare tutti i tipi di opzioni di impostazione della pagina in un comodo API: margine superiore, sinistro, inferiore, destro, intestazione e piè di pagina, orientamento - verticale o orizzontale - ridimensionamento, formato carta, area di stampa, righe e colonne ripetute e molto altro.
Caratteristiche uniche
Ci sono anche una serie di caratteristiche uniche che gli sviluppatori troveranno solo in Aspose.Cells for Java, ad esempio il supporto per un’ampia gamma di formati tra cui XLS, XLT, XLSX, CSV, SpreadsheetML, delimitato da tabulazioni, TXT, XML e HTML
Lo API consente inoltre agli sviluppatori di aggiungere una copia di un foglio di lavoro esistente (con contenuti completi, immagini e grafici) a un file, impostare lo sfondo sfumato per i grafici tramite lo API, creare commenti, impostare impostazioni locali e regionali, filtri automatici e interruzioni di pagina , imposta formule complesse, formattazione condizionale, tutti i tipi di opzioni di protezione introdotte in Microsoft Excel XP o versioni successive e manipola gli intervalli denominati.
Inoltre, Aspose.Cells aggiunge un grafico personalizzato API e un efficiente motore di calcolo delle formule.
Prova Aspose.Cells for Java
Aspose.Cells for Java ha un enorme elenco di funzionalità. Per saperne di più sulle funzionalità e per la Guida del programmatore, controllala documentazione edimostrazioni online.
Si prega di provare il componente per vedere la differenza tra esso e i suoi concorrenti. La versione di valutazione è totalmente gratuita senza limiti di tempo.Scaricamento la versione di valutazione gratuitamente.
Altre API
JExcelAPI
JExcelAPI è un Java API utilizzato per leggere, scrivere e modificare fogli di calcolo Excel. È un open source Java API che consente agli sviluppatori Java di leggere fogli di calcolo Excel e di generare fogli di calcolo Excel in modo dinamico. 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 set limitato di funzionalità. Supporta: lettura e scrittura di file Excel nativi Microsoft (Excel97-2003) solo nel formato file XLS. Ha un supporto limitato per il calcolo delle formule. Può manipolare i caratteri, supportare la formattazione di numeri e date, modificare fogli di lavoro esistenti, impostazioni locali, preservare grafici (ma non consente agli sviluppatori di creare o manipolare grafici), inserire immagini e così via.
Supporto grafico limitato
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 (purché il foglio contenente il grafico contenga altri dati oltre al grafico). Tutte le informazioni sull’immagine vengono conservate durante la copia di file Excel, tuttavia, quando si aggiunge un’immagine a un foglio di calcolo, sono supportate solo le immagini in formato PNG.
Impossibile copiare fogli di lavoro
Non esiste API per copiare direttamente i fogli di lavoro all’interno o tra le cartelle di lavoro. Questo compito può essere svolto in modo indiretto, ma richiede del lavoro da svolgere. Ad esempio, utilizzando i loop, copia cella per cella con il metodo WritableCell.copyTo(), che produrrà una copia completa. Tuttavia, il formato è solo copiato in modo superficiale, quindi dovrai ottenere il formato della cella e utilizzare il costruttore di copia di quello, quindi chiamare WritableCell.setCellFormat() sulla cella che hai appena copiato. È 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 una dimensione enorme in MB.
JExcelAPI non ha API per l’adattamento automatico di righe o colonne. Dovrai scrivere codice che analizzi le celle in ogni colonna, calcoli la lunghezza massima e quindi effettui chiamate a WritableSheet.setColumnView() e Writable Sheet.setRowView() di conseguenza.
Funzionalità mancanti
Ci sono anche alcuni ostacoli in più: lo API non supporta le tabelle pivot e gli elenchi a discesa. Ha opzioni di convalida limitate da impostare sulle celle. Le opzioni di impostazione della pagina e di stampa non sono completamente supportate, ad esempio la ripetizione di righe e colonne e non sono supportati tutti i tipi di opzioni di protezione (compresi i fogli relativi alla protezione tramite password). Inoltre, non supporta l’ordinamento dei dati, i dati di filtro automatico, la formattazione condizionale, gli oggetti di 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 set esteso di funzionalità rispetto a JExcelAPI, inclusa la lettura e la scrittura di file Excel Microsoft nativi (Excel97-2003 - XLSX Il formato file OOXML non è ancora supportato), celle di formattazione (formati numerici, caratteri, colori, bordi, allineamenti ecc.) , unione di celle, opzioni di impostazione della pagina, importazione di immagini, forme, intervalli con nome, creazione di commenti, intestazioni e piè di pagina, collegamenti ipertestuali, adattamento automatico di righe e colonne, ecc.
Supporto grafico limitato
Esistono alcune limitazioni note per il POI-HSSF API. Ad esempio, attualmente 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 altro è il supporto della tabella pivot, non è possibile generare tabelle pivot.
Calcolo della formula
Sebbene org.apache.poi.hssf.usermodel di POI supporti le formule, manca di un ricco motore di calcolo delle formule. Supporta formule contenenti stringhe di riferimenti di cella, valori letterali interi e in virgola mobile, riferimenti relativi o assoluti, operatori aritmetici e logici ma non supporta formule di matrice, operatori unari e riferimenti 3D.
Funzionalità mancanti
Anche HSSF API non supporta le tabelle pivot. Ha opzioni di convalida dei dati limitate da impostare sulle celle. Inoltre, non supporta funzionalità come l’ordinamento dei dati e il filtro automatico dei dati.
Confronto delle caratteristiche
La tabella seguente tenta di fornire una panoramica delle funzionalità su come Aspose.Cells for Java corrisponde ai componenti open source (menzionati sopra) sebbene non richieda di coprire tutte le funzionalità fornite dai prodotti coinvolti. Questo è solo uno schema che viene preso in un momento specifico ed è del tutto possibile che le funzionalità mancanti possano essere supportate quando leggerai il documento.
Caratteristica | JExcelAPI | HSSF di POI | Aspose.Cells for Java |
---|---|---|---|
Formati di file | |||
Leggere e scrivere formati di file (XLS, XLT, XLSX, CSV, SpreadsheetML, delimitato da tabulazioni, TXT, XML e HTML) | Parzialmente supportato | Parzialmente supportato | Supportato |
Apri il file e salvalo in un flusso | Supportato | ||
Converti 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 | ||
Esporta i dati del foglio di lavoro in un array | Supportato | ||
Importa i dati da un ResultSet | Supportato | ||
Importa dati da un array, raccolta | Supportato | ||
Aggiungi una copia del foglio di lavoro esistente (tutti i contenuti, incluse immagini e grafici) | Parzialmente supportato | Parzialmente supportato | Supportato |
Importa immagini | Supportato | ||
Importa grafici | Supportato | ||
Imposta lo sfondo sfumato per i grafici utilizzando API | Supportato | ||
Proteggi foglio di lavoro, inclusi contenuti, oggetti e scenari | Parzialmente supportato | Supportato | Supportato |
Crea filtri automatici utilizzando API | Supportato | ||
Funzioni di impostazione della pagina (superiore, sinistro, inferiore, destro, margini di intestazione e piè di pagina, orientamento verticale o orizzontale, ridimensionamento, formato carta, area di stampa, righe e colonne ripetute) | Parzialmente supportato | Supportato | Supportato |
La pagina orizzontale e verticale attraversa lo API | Supportato | Supportato | Supportato |
Copia e sposta i fogli di lavoro all’interno e tra le cartelle di lavoro | Supportato | Supportato | |
Inserimento ed 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 | ||
Filtro automatico | Supportato | ||
Convalida dei dati (tutti i tipi) | Parzialmente supportato | Parzialmente supportato | Supportato |
Importa le formule dal foglio di calcolo del designer | Parzialmente supportato | Parzialmente supportato | Supportato |
Imposta formule complesse tramite API | Supportato | ||
Formattazione condizionale | Supportato | Supportato | |
Attivazione dei fogli e creazione di uno Cell attivo nella cartella di lavoro. | Supportato | Supportato | Supportato |
|Funzionalità avanzate|||| | Marcatori intelligenti||| Supportato| | Crea grafici standard (a colonne, a barre, a linee, a torta, a dispersione, ad area, a ciambella, a radar, a superficie 3D, a bolle, azionari, a cilindro, a cono, a piramide, ecc.)||| Supportato| | Grafico personalizzato API||| Supportato| | Impostazioni delle proprietà del documento||| Supportato| | Opzioni avanzate di protezione di Excel XP||| Supportato| | Componenti aggiuntivi, VBA, macro||| Supportato| | Manipolare intervalli denominati| Supportato| Supportato| Supportato| | Tabelle pivot||| Supportato| | Crea oggetti di disegno, forme e controlli comuni|| Supportato| Supportato| |Inserisci i controlli nei grafici||| Supportato| | Motore di calcolo delle formule||| Supportato| | Trova API| Supportato| Supportato| Supportato|