Java本身不支持直接读取微软的Excel表格数据。第三方的Apache提供了一个库POI用以支持Java读写Excel表格数据。
首先需要到Apache官网下载POI的库,下载链接地址:https://poi.apache.org/download.html
本文使用的poi-3.9-20121203
假设现在有有一个名为1.xls的Excel文件,1.xls的表数据内容是这样的:
写一个Java程序读出来:
package apl.gsc.excel;
import java.io.File;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;public class ReadExcel {
public static void main(String[] args) throws Exception {
File xlsFile = new File("D:\\1.xls"); // 工作表
Workbook workbook = WorkbookFactory.create(xlsFile);
// 表个数。
int numberOfSheets = workbook.getNumberOfSheets();
// 遍历表。
for (int i = 0; i < numberOfSheets; i++) {
Sheet sheet = workbook.getSheetAt(i); // 行数。
int rowNumbers = sheet.getLastRowNum() + 1; // Excel第一行。
Row temp = sheet.getRow(0);
if (temp == null) {
continue;
} int cells = temp.getPhysicalNumberOfCells();
// 读数据。
for (int row = 0; row < rowNumbers; row++) {
Row r = sheet.getRow(row);
for (int col = 0; col < cells; col++) {
System.out.print(r.getCell(col).toString()+" | ");
}
// 换行。
System.out.println();
}
}
}}