Aspose.Cells for Java gegen Open Source Mitbewerber vergleichen

Übersicht

Die Mehrheit der Geschäftsszenarien erfordert anspruchsvolle Berichte, die reich an Inhalten sind und auf die Bedürfnisse der spezifischen Entscheidungen oder Aufgaben ausgerichtet sind, die das allgemeine Management verwenden wird. Sie erfordern auch eine Möglichkeit zur Datensammlung, Analyse und Schnittstelle zu Datenbanksystemen.

Eine übliche Lösung ist die Verwendung von Tabellenkalkulationen zur Datensammlung, Analyse und als Präsentationswerkzeug. Die Lösung sollte in der Lage sein, vollständig formatierte Microsoft Excel-Dateien zu erstellen, mit denen ein Geschäftsszenario analysiert werden kann und idealerweise diese grundlegenden Funktionen erweitern, um die Prozesse der Erfassung und des Exports von Daten in andere weit verbreitete Büroanwendungen zu erkunden. Diese Entwicklungen können die Nutzung der integrierten Funktionen und Funktionen von Microsoft Excel umfassen.

Heute begegnen uns verschiedene Tabellenkalkulationskomponenten auf dem Markt, die wirklich leistungsstarke APIs für das Tabellenmanagement versprechen. Hier machen wir eine Funktionsanalyse von Aspose.Cells for Java im Vergleich zu seinen Open-Source-Konkurrenten JExcelAPI und POI’s HSSF. Lassen Sie mich zuerst eine Einführung in die drei geben.

Aspose.Cells for Java

Aspose.Cells for Java ist eine flexible Komponente, die es Java-Anwendungen ermöglicht, Excel-Tabellenkalkulationen zu erstellen und zu verwalten, ohne dass Microsoft Excel auf dem System (Client oder Server) installiert ist. Im Gegensatz zu ähnlichen Produkten anderer Anbieter unterstützt Aspose.Cells for Java nicht nur die Generierung von Tabellenkalkulationen und grundlegende Dateiformatierungsfunktionen, sondern auch eine Reihe von erweiterten Funktionen. Diese erweiterten Funktionen erleichtern es Entwicklern, den Inhalt der Tabellenkalkulation, die Zellformatierung und die Dateischutzoptionen zu manipulieren.

Aspose.Cells for Java kann auch Daten aus verschiedenen Datenquellen in Tabellenkalkulationen importieren, gemeinsame und komplexe mathematische, Datums-/Zeit-, Finanz-, Textformeln und Funktionen importieren, Bilder importieren (alle gängigen Formate werden unterstützt, einschließlich BMP, GIF, JPG, PNG, WMF, EMF und mehr), Kommentare erstellen, Zeichenobjekte und Steuerelemente erstellen sowie eine Reihe weiterer Aufgaben ausführen.

Aspose.Cells for Java unterstützt außerdem Add-Ins, VBA und Makros.

Öffnen und Speichern

Neben der Unterstützung von gemeinsamen Funktionen wie dem Erstellen oder Lesen von nativen Excel-Dateien bietet Aspose.Cells for Java auch viele wertvolle Funktionen wie das Speichern und Öffnen von Excel-Dateien (Excel 97 - Excel 2007) in Streams, das Importieren und Exportieren von Daten aus einem ResultSet und einem Array.

Aspose.Cells kann Diagramme, benannte Bereiche, Kopf- und Fußzeilen mit allen Attributen, die Microsoft Excel bietet, importieren, Hyperlinks und Bilder einfügen sowie Formeln aus einer Designer-Tabelle importieren.

Formatierung

Die Formatierung von Arbeitsblattdaten ist wichtig, da sie die Bedeutung Ihrer Daten verändern kann. Wenn Sie ein Arbeitsblatt drucken, es an Kunden senden oder Ihrem Chef zeigen möchten, müssen Sie darüber nachdenken, ob es in benutzerfreundlicher Weise formatiert ist. Ein sorgfältiger Einsatz von Farben, Schattierungen, Grenzen, Schriften, Zahlenformatierung, Ausrichtung, Einrückung und Ausrichtung kann den Unterschied zwischen einem unordentlichen Klumpen von Daten und einem Arbeitsblatt ausmachen, das einfach zu bearbeiten und zu verstehen ist.

Aspose.Cells for Java bietet die Flexibilität, Grenzen um Zellen und Zellbereiche leicht zu ziehen. Darüber hinaus kann die AIP Schrifteinstellungen (Familie und Typ, Stil, Größe, Farbe und Ausrichtung) anwenden und Zellen mit Hintergrundmustern schattieren. Die API ist effizient genug, dass Sie eine komplette Zeile oder Spalte formatieren, Ausrichtungen festlegen, Text in Zellen umbrechen und drehen können.

Aspose.Cells for Java unterstützt alle Arten von Zahlformaten, einschließlich allgemeinem Format, Zahlen in Dezimalnotationen, Währungssymbolen, Prozenten, wissenschaftlichem Format, Datum-/Zeitwerten und sogar benutzerdefinierten Zahlformaten.

Aspose.Cells ermöglicht es Entwicklern, Zeilen und Spalten automatisch anzupassen und alle Arten von Seiteneinrichtungsoptionen in einer bequemen API zu konfigurieren: Oben, links, unten, rechts, Kopf- und Fußzeilenränder, Ausrichtung - Hoch- oder Querformat - Skalierung, Papiergröße, Druckbereich, wiederholende Zeilen und Spalten und vieles mehr.

Einzigartige Funktionen

Es gibt auch eine Reihe einzigartiger Funktionen, die Entwickler nur in Aspose.Cells for Java finden, z.B. Unterstützung für eine Vielzahl von Formaten, einschließlich XLS, XLT, XLSX, CSV, SpreadsheetML, Tabulator-getrennt, TXT, XML und HTML.

Die API ermöglicht es Entwicklern auch, eine Kopie eines vorhandenen Arbeitsblatts (mit vollständigen Inhalten, Bildern und Diagrammen) zu einer Datei hinzuzufügen, einen Farbverlaufshintergrund für Diagramme über die API festzulegen, Kommentare zu erstellen, Ländereinstellungen und Regionseinstellungen festzulegen, AutoFilter und Seitenumbrüche festzulegen, komplexe Formeln, bedingte Formatierung, alle Arten von Schutzoptionen ab Microsoft Excel XP oder höher und benannte Bereiche zu manipulieren.

Darüber hinaus fügt Aspose.Cells eine benutzerdefinierte Diagramm-API und einen effizienten Formelberechnungsmotor hinzu.

Probieren Sie Aspose.Cells for Java aus

Aspose.Cells for Java hat eine große Liste von Funktionen. Um mehr über die Funktionen und den Programmierleitfaden zu erfahren, überprüfen Sie bitte die Dokumentation und Online-Demos.

Bitte versuchen Sie das Component, um den Unterschied zwischen ihm und seinen Konkurrenten zu sehen. Die Evaluierungsversion ist völlig kostenlos ohne zeitliche Begrenzung. Laden Sie die Evaluierungsversion kostenlos herunter.

Andere APIs

JExcelAPI

JExcelAPI ist eine Java-API, die Excel-Tabellenkalkulationen liest, schreibt und ändert. Es handelt sich um eine Open-Source-Java-API, die es Java-Entwicklern ermöglicht, Excel-Tabellenkalkulationen zu lesen und dynamisch zu erstellen. Darüber hinaus enthält sie einen Mechanismus, der es Java-Anwendungen ermöglicht, eine Tabelle zu lesen, Zellen zu ändern und die neue Tabelle zu schreiben.

Zum Zeitpunkt des Schreibens hat es einen begrenzten Funktionsumfang. Es unterstützt: Lesen und Schreiben von nativen Microsoft Excel-Dateien (Excel97-2003) nur im XLS-Dateiformat. Es hat eine begrenzte Unterstützung von Formeln. Es kann Schriftarten manipulieren, die Formatierung von Zahlen und Datum unterstützen, vorhandene Tabellenblätter ändern, Lokaleinstellungen beibehalten, Diagramme konservieren (erlaubt jedoch nicht das Erstellen oder Bearbeiten von Diagrammen durch Entwickler), das Einfügen von Bildern usw.

Begrenzte Diagrammunterstützung

JExcelApi hat eine begrenzte Unterstützung für Diagramme: Es unterstützt nicht das Erstellen und Bearbeiten von Diagrammen. Beim Kopieren einer Tabellenkalkulation, die ein Diagramm enthält, wird das Diagramm in die generierte Tabellenkalkulation geschrieben (solange das Tabellenblatt, das das Diagramm enthält, auch andere Daten sowie das Diagramm enthält). Alle Bildinformationen werden beim Kopieren von Excel-Dateien erhalten, jedoch werden nur Bilder im PNG-Format unterstützt, wenn ein Bild zu einer Tabellenkalkulation hinzugefügt wird.

Kann Tabellenblätter nicht kopieren

Es gibt keine API zum direkten Kopieren von Tabellenblättern innerhalb oder zwischen Arbeitsmappen. Diese Aufgabe kann auf indirekte Weise erledigt werden, erfordert jedoch einige Arbeiten. Beispielsweise das Kopieren von Zelle zu Zelle mithilfe der Methode WritableCell.copyTo(), die eine tiefe Kopie erzeugt. Die Formatierung wird jedoch nur oberflächlich kopiert, daher müssen Sie die Zellformatierung abrufen und den Kopierkonstruktor davon verwenden und dann WritableCell.setCellFormat() auf die gerade kopierte Zelle aufrufen. Es ist eine ziemlich große Aufgabe.

Keine Optimierung

Eine weitere Einschränkung ist, dass JExcelAPI keine Optimierungen zur Reduzierung der Dateigröße durchführt. Wir sollten nicht überrascht sein, eine Ausgabedatei mit einer riesigen Größe in MBs zu sehen, die von der Komponente generiert wurde.

JExcelAPI hat keine API zum automatischen Anpassen von Zeilen oder Spalten. Sie müssen Code schreiben, der die Zellen in jeder Spalte durchsucht, die maximale Länge berechnet und dann Anrufe an WritableSheet.setColumnView() und WritableSheet.setRowView() entsprechend tätigt.

Fehlende Funktionen

Es gibt auch noch einige Hürden: Die API unterstützt keine Pivot-Tabellen und Dropdown-Listen. Es gibt begrenzte Validierungsoptionen, die auf die Zellen angewendet werden können. Die Seitenformat- und Druckoptionen werden nicht vollständig unterstützt, z. B. das Wiederholen von Zeilen und Spalten und nicht alle Arten von Schutzoptionen (einschließlich des Blattschutzes bezogen auf Passwörter) werden unterstützt. Es unterstützt auch keine Daten sortieren, Auto-Filter-Daten, bedingte Formatierung, Zeichenobjekte, Steuerelemente und viele weitere wertvolle Funktionen.

POI-HSSF

HSSF ist die Komponente von POI, die Excel-Tabellenkalkulationen liest und schreibt. Sie verfügt über ein erweitertes Funktionsspektrum im Vergleich zu JExcelAPI, darunter das Lesen und Schreiben von nativen Microsoft Excel-Dateien (Excel97-2003 - XLSX-OOXML-Dateiformat wird derzeit nicht unterstützt), das Formatieren von Zellen (Nummernformate, Schriftarten, Farben, Rahmen, Ausrichtungen usw.), das Zusammenführen von Zellen, Seiteneinrichtungsoptionen, das Importieren von Bildern, Formen, benannten Bereichen, das Erstellen von Kommentaren, Kopf- und Fußzeilen, Hyperlinks, das automatische Anpassen von Zeilen und Spalten usw.

Begrenzte Diagrammunterstützung

Es gibt einige bekannte Einschränkungen für die POI-HSSF-API. Zum Beispiel können Sie derzeit keine Diagramme erstellen. Sie können jedoch ein Diagramm in Excel erstellen, die Diagrammdatenwerte mit HSSF ändern und eine neue Tabellenkalkulation schreiben. Ein weiteres Beispiel ist die Pivot-Tabellen-Unterstützung, das Generieren von Pivot-Tabellen ist nicht möglich.

Formelberechnung

Obwohl POI’s org.apache.poi.hssf.usermodel Formeln unterstützt, fehlt es an einem leistungsfähigen Formelberechnungsmotor. Es unterstützt Formeln, die Zellbezüge als Zeichenfolgen, Ganzzahlen und Gleitkommazahlen enthalten, relative oder absolute Bezüge, arithmetische und logische Operatoren, unterstützt jedoch keine Array-Formeln, unäre Operatoren und 3D-Bezüge.

Fehlende Funktionen

Die HSSF-API unterstützt auch keine PivotTables. Sie verfügt über eingeschränkte Optionen zur Datenvalidierung für die Zellen. Sie unterstützt auch nicht Funktionen wie Datensortierung und Autofilterung von Daten.

Funktionsvergleich

Die folgende Tabelle versucht, einen Funktionsüberblick darüber zu geben, wie sich Aspose.Cells for Java zu den oben genannten Open-Source-Komponenten verhält, obwohl sie nicht den Anspruch erhebt, alle Funktionen der beteiligten Produkte abzudecken. Dies ist nur ein grober Überblick, der zu einem bestimmten Zeitpunkt erfolgt und es ist durchaus möglich, dass die fehlenden Funktionen unterstützt werden, wenn Sie das Dokument lesen.

Funktion JExcelAPI POI’s HSSF Aspose.Cells for Java
Dateiformate      
Lesen und Schreiben von Dateiformaten (XLS, XLT, XLSX, CSV, SpreadsheetML, Tabulatorgetrennt, TXT, XML und HTML) Teilweise unterstützt Teilweise unterstützt Unterstützt
Datei öffnen und in einen Stream speichern     Unterstützt
Excel-Datei in PDF-Dokument umwandeln     Unterstützt
Passwortgeschützte Dateien   Unterstützt Unterstützt
Inhalte der Tabellenkalkulation manipulieren      
Die Dokumenteigenschaften von Excel-Dateien ändern     Unterstützt
Arbeitsblattdaten in ein Array exportieren     Unterstützt
Daten aus einem ResultSet importieren     Unterstützt
Daten aus einem Array, einer Sammlung importieren     Unterstützt
Eine Kopie des vorhandenen Arbeitsblatts hinzufügen (alle Inhalte einschließlich Bilder und Diagramme) Teilweise unterstützt Teilweise unterstützt Unterstützt
Bilder importieren     Unterstützt
Diagramme importieren     Unterstützt
Gradientenhintergrund für Diagramme mit API festlegen     Unterstützt
Arbeitsblatt schützen, einschließlich Inhalt, Objekte und Szenarien Teilweise unterstützt Unterstützt Unterstützt
Automatische Filter mit API erstellen Unterstützt
Seiteneinrichtungsmerkmale (oben, links, unten, rechts, Kopf- und Fußzeilenränder, Ausrichtung - Hoch- oder Querformat, Skalierung, Papiergröße, Druckbereich, wiederholte Zeilen und Spalten) Teilweise unterstützt Unterstützt Unterstützt
Horizontale und vertikale Seitenumbrüche durch die API Unterstützt Unterstützt Unterstützt
Arbeitsblätter innerhalb und zwischen Arbeitsmappen kopieren und verschieben Unterstützt Unterstützt
Zeilen und Spalten einfügen und löschen Unterstützt Unterstützt
Zeilen und Spalten automatisch anpassen Unterstützt Unterstützt
Zeilen und Spalten kopieren Unterstützt
Daten sortieren Unterstützt
Vorgänger und Nachfolger verfolgen Unterstützt
Automatische Filterung Unterstützt
Datenvalidierung (alle Typen) Teilweise unterstützt Teilweise unterstützt Unterstützt
Formeln aus Designer-Tabelle importieren Teilweise unterstützt Teilweise unterstützt Unterstützt
Komplexe Formeln durch API festlegen Unterstützt
Bedingte Formatierung Unterstützt Unterstützt
Aktivieren von Tabellen und Auswahl einer aktiven Zelle in der Arbeitsmappe. Unterstützt Unterstützt Unterstützt
Erweiterte Funktionen
Smart Marker Unterstützt
Erstellen von Standardsdiagrammen (Säule, Balken, Linie, Kuchen, Scatter, Fläche, Donut, Radar, 3D-Oberfläche, Blase, Aktien, Zylinder, Kegel, Pyramide usw.) Unterstützt
Benutzerdefinierte Diagramm-API Unterstützt
Einstellungen für Dokumenteigenschaften Unterstützt
Erweiterte Excel XP-Schutzeinstellungen Unterstützt
Add-Ins, VBA, Makros Unterstützt
Benannte Bereiche bearbeiten Unterstützt Unterstützt Unterstützt
Pivot-Tabellen Unterstützt
Gemeinsame Zeichenobjekte, Formen und Steuerelemente erstellen Unterstützt Unterstützt
Steuerelemente in Diagramme einfügen Unterstützt
Formelberechnungs-Engine Unterstützt
API zum Suchen Unterstützt Unterstützt Unterstützt