Heim  >  Artikel  >  Java  >  So importieren Sie Excel-Dateien in Java

So importieren Sie Excel-Dateien in Java

王林
王林Original
2019-11-16 13:13:156762Durchsuche

So importieren Sie Excel-Dateien in Java

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.

So importieren Sie Excel-Dateien in Java

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(&#39;cell.getStringCellValue0():&#39; + cell.getStringCellValue());
        cell = row.getCell(1);
       if (cell == null) {
            continue;
       }
        //System.out.println(&#39;cell.getStringCellValue1():&#39; + 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 . 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));

Empfohlenes Tutorial:

Java-Tutorial

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn