在 Java 中解析 Excel 文件有多种方式,常用的包括 Apache POI、JExcelApi、JExcel 等。下面我将为你详细介绍这些库的使用方法,包括 Maven 和 Gradle 的依赖坐标,并附上示例代码。
Apache POI 是一个广泛使用的 Java 库,用于操作 Microsoft Office 格式的文档,包括 Excel。
步骤流程:
添加依赖(Maven):
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>5.0.0</version>
</dependency>
创建工作簿和工作表:
import org.apache.poi.ss.usermodel.*;
// 创建工作簿
Workbook workbook = WorkbookFactory.create(new FileInputStream("path/to/your/excel.xlsx"));
// 获取工作表
Sheet sheet = workbook.getSheetAt(0);
遍历行和单元格:
for (Row row : sheet) {
for (Cell cell : row) {
// 处理单元格数据
String cellValue = cell.getStringCellValue();
System.out.print(cellValue + "\t");
}
System.out.println();
}
// 记得在结束后关闭工作簿
workbook.close();
JExcelApi 是另一个 Java 操作 Excel 的库。
步骤流程:
添加依赖(Maven):
<dependency>
<groupId>net.sourceforge.jexcelapi</groupId>
<artifactId>jxl</artifactId>
<version>2.6.12</version>
</dependency>
读取 Excel 文件:
import jxl.*;
// 打开 Excel 文件
Workbook workbook = Workbook.getWorkbook(new File("path/to/your/excel.xls"));
// 获取第一个工作表
Sheet sheet = workbook.getSheet(0);
遍历行和单元格:
for (int row = 0; row < sheet.getRows(); row++) {
for (int col = 0; col < sheet.getColumns(); col++) {
Cell cell = sheet.getCell(col, row);
String cellContent = cell.getContents();
System.out.print(cellContent + "\t");
}
System.out.println();
}
// 关闭工作簿
workbook.close();
这是 JExcelApi 的升级版。
步骤流程:
添加依赖(Maven):
<dependency>
<groupId>net.sourceforge.jexcelapi</groupId>
<artifactId>jxl</artifactId>
<version>2.6.12</version>
</dependency>
读取 Excel 文件:
import jxl.Workbook;
import jxl.read.biff.BiffException;
try {
Workbook workbook = Workbook.getWorkbook(new File("path/to/your/excel.xls"));
jxl.Sheet sheet = workbook.getSheet(0);
// ... 同上,遍历行和单元格
} catch (IOException | BiffException e) {
e.printStackTrace();
}
这些库都有自己的特点和适用场景,你可以根据项目需求选择其中之一。示例代码中的循环部分演示了如何遍历 Excel 文件的行和单元格,你可以根据实际需求进行进一步的处理。