Java verwendet POI zum Importieren von Excel-Dateien, was relativ einfach zu bedienen ist und das XLSX-Format unterstützt.
POI-Ressourcenpaket herunterladen
POI von der offiziellen Website herunterladen. Die in diesem Artikel ausgewählte Version ist poi-bin-3.17. Reißverschluss. Zuerst hatte ich Bedenken, dass die Version zu neu sei und nicht mit bestehenden Projekten kompatibel sei, aber später lief das Programm und es wurden keine Probleme festgestellt.
Kopieren Sie das JAR-Paket unter poi-3.17 und das Paket poi-3.17lib*.jar in die WEB-INFlib des Projekts und konfigurieren Sie den Kompilierungspfad im Projekt.
Fügen Sie die folgenden Referenzen in der Java-Datei hinzu, wobei hssf für das XLS-Format und xssf für das XLSX-Format steht
import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.DataFormatter; import org.apache.poi.xssf.usermodel.XSSFCell; import org.apache.poi.xssf.usermodel.XSSFRow; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook;
Excel-Datei lesen
HSSFWorkbook workbook = null; try { // 读取Excel文件 InputStream inputStream = new FileInputStream('c:\test.xlsx'); workbook = new HSSFWorkbook(inputStream); inputStream.close(); } catch (Exception e) { e.printStackTrace(); }
Über Excel-Tabelle iterieren
// 遍历Excel Sheetfor (int numSheet = 0; numSheet < workbook.getNumberOfSheets(); numSheet++) { workbook.getSheetAt(numSheet); }
Über Zeilen iterieren
HSSFSheet sheet = workbook.getSheetAt(0); if (sheet != null) { // 循环行 for (int rowNum = 1; rowNum <= sheet.getLastRowNum(); rowNum++) { HSSFRow row = sheet.getRow(rowNum); if (row == null) { continue;// 忽略并继续读取 } HSSFCell cell = row.getCell(0); if (cell == null) { continue; } //System.out.println('cell.getStringCellValue0():' + cell.getStringCellValue()); cell = row.getCell(1); if (cell == null) { continue; } //System.out.println('cell.getStringCellValue1():' + cell.getStringCellValue()); } }
POI stößt auf ein Problem Cannot get a text value from a numeric cell “Poi”
Wenn beim Importieren einer Excel-Datei eine Spalte vom numerischen Typ ist, wird ein cell.getStringCellValue()
Fehler direkt über <🎜 gemeldet >. Cannot get a text value from a numeric cell “Poi”
Lösung:
DataFormatter formatter = new DataFormatter(); String val = formatter.formatCellValue(sheet.getRow(col).getCell(row));
Das obige ist der detaillierte Inhalt vonSo importieren Sie Excel-Dateien in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!