java poi读取execl文件
时间: 2024-09-26 07:15:09 浏览: 37
在Java中,使用Apache POI库可以方便地读取Excel(.xls和.xlsx)文件。POI是一个流行的API,它允许开发者操作Microsoft Office格式的文档,包括创建、修改和读取。以下是使用POI读取Excel文件的基本步骤:
1. 引入依赖:首先需要在项目中添加Apache POI的依赖。如果你使用Maven,可以在pom.xml文件中加入:
```xml
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>最新版本号</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>最新版本号</version>
</dependency>
```
2. 创建`HSSFWorkbook`或`XSSFWorkbook`:根据Excel文件的类型(`.xls`还是`.xlsx`),选择合适的读取工具。如果是旧版的`.xls`,使用`HSSFWorkbook`;如果是新的`.xlsx`,使用`XSSFWorkbook`。
```java
FileInputStream inputStream = new FileInputStream("path_to_your_file.xls");
HSSFWorkbook workbook = new HSSFWorkbook(inputStream);
// 或者
FileInputStream inputStream = new FileInputStream("path_to_your_file.xlsx");
XSSFWorkbook workbook = new XSSFWorkbook(inputStream);
```
3. 读取工作表:通过`workbook.getSheetAt(index)`获取特定索引的工作表,然后遍历行和列获取数据。
```java
Sheet sheet = workbook.getSheetAt(0); // 获取第一个工作表
Iterator<Row> rowIterator = sheet.iterator();
while (rowIterator.hasNext()) {
Row row = rowIterator.next();
Iterator<Cell> cellIterator = row.cellIterator();
while (cellIterator.hasNext()) {
Cell cell = cellIterator.next();
String value = cell.getStringCellValue(); // 对数字型cell可以用getNumericCellValue()等方法
System.out.print(value + "\t"); // 打印单元格内容
}
System.out.println(); // 每行打印结束换行
}
```
4. 关闭资源:最后记得关闭输入流和工作簿。
```java
inputStream.close();
workbook.close();
```
阅读全文