java 读取xlsx第一列数据
时间: 2024-10-07 11:07:20 浏览: 26
在Java中,我们可以使用Apache POI库来读取Excel (XLSX) 文件的第一列数据。Apache POI是一个功能强大的API,它允许我们操作Microsoft Office格式的文件。以下是一个简单的步骤来实现这个任务:
首先,你需要添加Apache POI依赖到你的项目中。如果你使用Maven,可以在pom.xml文件里添加如下依赖:
```xml
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.1.2</version>
</dependency>
```
然后,你可以使用以下代码片段读取第一列的数据:
```java
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public List<String> readFirstColumn(String filePath) throws IOException {
FileInputStream fis = new FileInputStream(filePath);
XSSFWorkbook workbook = new XSSFWorkbook(fis);
// 获取第一个工作表
Sheet sheet = workbook.getSheetAt(0); // 如果有多个工作表,索引从0开始
// 获取列数
int numColumns = sheet.getLastRowNum() + 1; // 获取行数并加一,因为最后一行的索引是最大行数减一
List<String> columnData = new ArrayList<>();
for (int i = 0; i <= numColumns; i++) { // 遍历每一列
Row row = sheet.getRow(i);
if (row != null) { // 检查是否为空行
Cell firstCell = row.getCell(0); // 获取第一列的单元格
String data = firstCell.getStringCellValue(); // 提取字符串值
columnData.add(data);
}
}
workbook.close();
fis.close();
return columnData;
}
```
这段代码会返回一个包含第一列所有非空单元格内容的列表。注意,这仅适用于只读情况。如果你想修改Excel文件,你应该使用`HSSFWorkbook`替换`XSSFWorkbook`。