MS-Excel Dateien werden hauptsächlich verwendet, um tabellarische Daten in Form von Arbeitsblättern zu speichern. Oftmals werden die riesigen Datensätze auch in Excel Dateien gepflegt. Daher können Sie auf das Szenario stoßen, in dem Sie Daten aus den Arbeitsblättern in einer Excel Datei lesen und abrufen müssen. Um dies zu erreichen, zeigt dieser Artikel, wie man eine Excel Datei in Java liest. Wir werden demonstrieren, wie Sie die gesamte Excel Datei oder nur ein einzelnes Arbeitsblatt programmgesteuert lesen können.
- Java Bibliothek zum Lesen von Excel Dateien
- Lesen Sie Daten aus einer Excel Datei
- Lesen Sie ein Arbeitsblatt in einer Excel Arbeitsmappe
Java Bibliothek zum Lesen von Excel Dateien
Um Daten aus den Arbeitsblättern zu lesen, verwenden wir Aspose.Cells for Java. Es ist eine Tabellenkalkulations-API zum Erstellen von Excel Dateien von Grund auf neu. Darüber hinaus können Sie vorhandene Excel Dateien ganz einfach lesen und bearbeiten. Die API kann aus dem Download Bereich heruntergeladen oder durch Hinzufügen der folgenden Maven konfigurationen in pom.xml installiert werden.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-cells</artifactId>
<version>21.11</version>
</dependency>
Lesen Sie eine Excel Datei in Java
In Excel Dateien werden die Daten in Zellen gespeichert, wobei jede Zelle durch ihren Namen (A1, B3 usw.) oder den Zeilen und Spaltenindex identifiziert wird. Diese Zellen bilden zusammen ein Arbeitsblatt, und eine Excel Datei besteht aus einzelnen oder mehreren Arbeitsblättern. Alle Arbeitsblätter sind in einer Arbeitsmappe enthalten. Dies war also ein kurzer Überblick über den Aufbau einer Excel Datei. Fahren wir nun mit dem Lesen von Daten aus einer Excel Datei fort.
Im Folgenden finden Sie die Schritte zum Lesen einer Excel Datei und zum Drucken ihrer Daten mit Java.
- Laden Sie die Excel Datei mit der Klasse Workbook.
- Erstellen Sie ein Objekt der Klasse WorksheetCollection und rufen Sie die Referenz der Arbeitsblätter mit der methode Workbook.getWorksheets() ab.
- Starten Sie eine Schleife, um alle Arbeitsblätter in der Sammlung zu durchlaufen, und führen Sie bei jeder Iteration die folgenden Schritte aus:
- Rufen Sie den Verweis auf das Arbeitsblatt in einem Worksheet objekt ab.
- Rufen Sie die Anzahl der Datenzeilen und -spalten im Arbeitsblatt ab.
- Starten Sie eine Schleife für Zeilen.
- Starten Sie eine verschachtelte Schleife für Spalten.
- Lesen Sie Daten aus jeder Zelle mit der methode Worksheet.getCells().get(rowIndex, columnIndex).getValue().
Das folgende Codebeispiel zeigt, wie eine Excel Datei in Java gelesen wird.
// Excel Datei laden
Workbook wb = new Workbook("workbook.xlsx");
// Holen Sie sich alle Arbeitsblätter
WorksheetCollection collection = wb.getWorksheets();
// Gehen Sie alle Arbeitsblätter durch
for (int worksheetIndex = 0; worksheetIndex < collection.getCount(); worksheetIndex++) {
// Holen Sie sich das Arbeitsblatt mit seinem Index
Worksheet worksheet = collection.get(worksheetIndex);
// Arbeitsblattnamen drucken
System.out.print("Worksheet: " + worksheet.getName());
// Holen Sie sich die Anzahl der Zeilen und Spalten
int rows = worksheet.getCells().getMaxDataRow();
int cols = worksheet.getCells().getMaxDataColumn();
// Schleife durch die Reihen
for (int i = 0; i < rows; i++) {
// Durchlaufen Sie jede Spalte in der ausgewählten Zeile
for (int j = 0; j < cols; j++) {
// Pring-Zellwert
System.out.print(worksheet.getCells().get(i, j).getValue() + " | ");
}
// Zeilenumbruch drucken
System.out.println(" ");
}
}
Das Folgende ist die Ausgabe, die wir in der Konsole erhalten, nachdem wir das obige Codebeispiel ausgeführt haben.
Lesen Sie ein bestimmtes Arbeitsblatt in Excel in Java
Sie können auch nur ein bestimmtes Arbeitsblatt in der Excel Datei lesen, indem Sie die folgenden Schritte ausführen.
- Laden Sie die Excel Datei mit der Klasse Workbook.
- Rufen Sie mithilfe der Methode Workbook.getWorksheets().get(index) den Verweis auf das gewünschte Arbeitsblatt in einem Worksheet objekt ab.
- Rufen Sie die Anzahl der Datenzeilen und -spalten im Arbeitsblatt ab.
- Starten Sie eine Schleife für Zeilen.
- Starten Sie eine verschachtelte Schleife für Spalten.
- Lesen Sie Daten aus jeder Zelle mit der methode Worksheet.getCells().get(rowIndex, columnIndex).getValue().
Das folgende Codebeispiel zeigt, wie Daten aus einem bestimmten Arbeitsblatt in Java gelesen werden.
// Excel Datei laden
Workbook wb = new Workbook("workbook.xlsx");
// Holen Sie sich die Referenz des Arbeitsblatts
Worksheet worksheet = wb.getWorksheets().get(0);
// Holen Sie sich die Anzahl der Zeilen und Spalten
int rows = worksheet.getCells().getMaxDataRow();
int cols = worksheet.getCells().getMaxDataColumn();
// Schleife durch die Reihen
for (int i = 0; i < rows; i++) {
// Durchlaufen Sie jede Spalte in der ausgewählten Zeile
for (int j = 0; j < cols; j++) {
// Zellenwert drucken
System.out.print(worksheet.getCells().get(i, j).getValue() + " | ");
}
// Zeilenumbruch drucken
System.out.println(" ");
}
Holen Sie sich eine kostenlose API Lizenz
Sie können Aspose.Cells for Java ohne Evaluierungseinschränkungen verwenden, indem Sie eine kostenlose temporäre Lizenz erwerben.
Fazit
In diesem Artikel haben Sie gelernt, wie Sie Excel Dateien dynamisch in Java lesen können. Mithilfe von Codebeispielen haben Sie gesehen, wie Sie Daten aus einem bestimmten Arbeitsblatt oder allen Arbeitsblättern in einer Excel Arbeitsmappe lesen. Darüber hinaus können Sie andere Funktionen von Aspose.Cells for Java mithilfe der Dokumentation erkunden. Falls Sie Fragen haben, können Sie uns diese gerne über unser Forum mitteilen.