首先引用依赖,在这里我用的是apache poi
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.1.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.1.2</version>
</dependency>
编写代码
读取的文件内容会按格式输出在控制台
public void excelImportDb(File file) throws Exception {
Workbook workbook = WorkbookFactory.create(file);
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);
if (r == null) break;
for (int col = 0; col < cells; col++) {
if (null == r.getCell(col)) {
/**
* 此处可设置空值判断
* Cell cell = r.createCell(col);
* cell.setCellValue("-1");
*/
System.out.print("empty");
continue;
}
System.out.print(r.getCell(col).toString() + " ");
}
/**
* 这里Row r对象里已经存储了一行数据
* 可通过getCell(int var1)方法取值;
* 例:
* r.getCell(7).toString;
*/
System.out.println();
}
}
}