Soubory MS Excel se ve velké míře používají k uchovávání tabulkových dat ve formě listů. Často jsou obrovské datové sady také udržovány v souborech aplikace Excel. Proto můžete narazit na scénář, kdy potřebujete číst a načítat data z listů v souboru aplikace Excel. Abychom toho dosáhli, tento článek ukazuje, jak číst soubor Excel v Javě. Ukážeme si, jak programově číst celý soubor Excel nebo pouze jeden list.
- Java knihovna pro čtení souborů aplikace Excel
- Čtení dat ze souboru aplikace Excel
- Přečtěte si list v sešitu aplikace Excel
Java Excel File Reader – ke stažení zdarma
Pro čtení dat z listů Excelu použijeme Aspose.Cells for Java. Jedná se o rozhraní API pro manipulaci s tabulkami pro vytváření souborů aplikace Excel od začátku. Navíc vám umožňuje poměrně snadno číst a manipulovat se stávajícími soubory Excel. API lze stáhnout z části ke stažení nebo nainstalovat přidáním následujících konfigurací Maven do pom.xml.
<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>
Jak číst soubor Excel v Javě
V souborech Excel jsou data uložena v buňkách, kde je každá buňka identifikována svým názvem (A1, B3 atd.) nebo indexem řádků a sloupců. Tyto buňky společně tvoří list a soubor aplikace Excel se skládá z jednoho nebo více listů. Všechny pracovní listy jsou obsaženy v sešitu.
Toto byl stručný přehled struktury souboru Excel. Nyní přistoupíme ke čtení dat ze souboru Excel.
Následují kroky ke čtení a tisku dat v souboru Excel v Javě.
- Načtěte soubor Excel pomocí třídy Sešit.
- Vytvořte objekt třídy WorksheetCollection a získejte odkaz na listy pomocí metody Workbook.getWorksheets().
- Spusťte smyčku a projděte všechny listy v kolekci a v každé iteraci proveďte následující kroky:
- Získejte odkaz na list v objektu Worksheet.
- Získejte počet datových řádků a sloupců v listu.
- Začněte smyčku pro řádky.
- Spusťte vnořenou smyčku pro sloupce.
- Čtěte data z každé buňky pomocí metody Worksheet.getCells().get(rowIndex, columnIndex).getValue().
Následující ukázka kódu ukazuje, jak číst soubor aplikace Excel v jazyce Java.
// Načíst soubor Excel
Workbook wb = new Workbook("workbook.xlsx");
// Získejte všechny pracovní listy
WorksheetCollection collection = wb.getWorksheets();
// Projděte všechny pracovní listy
for (int worksheetIndex = 0; worksheetIndex < collection.getCount(); worksheetIndex++) {
// Získejte list pomocí jeho indexu
Worksheet worksheet = collection.get(worksheetIndex);
// Vytisknout název listu
System.out.print("Worksheet: " + worksheet.getName());
// Získejte počet řádků a sloupců
int rows = worksheet.getCells().getMaxDataRow();
int cols = worksheet.getCells().getMaxDataColumn();
// Procházet řádky
for (int i = 0; i < rows; i++) {
// Procházejte každý sloupec ve vybraném řádku
for (int j = 0; j < cols; j++) {
// Hodnota první buňky
System.out.print(worksheet.getCells().get(i, j).getValue() + " | ");
}
// Tisk zalomení řádku
System.out.println(" ");
}
}
Následuje výstup, který získáme v konzole po spuštění ukázky kódu výše.
Java: Čtení dat z listu aplikace Excel
Můžete také číst pouze konkrétní list v souboru aplikace Excel. K tomu můžete vybrat požadovaný list ze sešitu pomocí rejstříku a poté přečíst jeho data. Následují kroky ke čtení konkrétního listu Excelu v Javě.
- Načtěte soubor Excel pomocí třídy Sešit.
- Získejte odkaz na požadovaný list v objektu Worksheet pomocí metody Workbook.getWorksheets().get(index).
- Získejte počet datových řádků a sloupců v listu.
- Začněte smyčku pro řádky.
- Spusťte vnořenou smyčku pro sloupce.
- Čtěte data z každé buňky pomocí metody Worksheet.getCells().get(rowIndex, columnIndex).getValue().
Následující ukázka kódu ukazuje, jak číst data z konkrétního listu v Javě.
// Načíst soubor Excel
Workbook wb = new Workbook("workbook.xlsx");
// Získejte odkaz na pracovní list
Worksheet worksheet = wb.getWorksheets().get(0);
// Získejte počet řádků a sloupců
int rows = worksheet.getCells().getMaxDataRow();
int cols = worksheet.getCells().getMaxDataColumn();
// Procházet řádky
for (int i = 0; i < rows; i++) {
// Procházejte každý sloupec ve vybraném řádku
for (int j = 0; j < cols; j++) {
// Vytisknout hodnotu buňky
System.out.print(worksheet.getCells().get(i, j).getValue() + " | ");
}
// Tisk zalomení řádku
System.out.println(" ");
}
Číst data z tabulek Excel v Javě – získejte bezplatnou licenci
Získáním bezplatné dočasné licence můžete číst data ze souborů aplikace Excel bez jakýchkoli omezení hodnocení.
Java API pro čtení souborů aplikace Excel - Přečtěte si více
Další funkce Aspose.Cells for Java můžete prozkoumat pomocí dokumentace. V případě jakýchkoliv dotazů nás neváhejte kontaktovat prostřednictvím našeho fóra.
Závěr
V tomto článku jste se naučili číst soubory Excel dynamicky v Javě. S pomocí ukázek kódu jste viděli, jak číst data z konkrétního listu nebo všech listů v sešitu aplikace Excel.