poi读取每一列的数据
时间: 2024-04-29 10:24:05 浏览: 9
Poi可以通过以下代码读取Excel文件中指定列的数据:
```java
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import org.apache.poi.ss.usermodel.Cell;
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 ReadExcelColumn {
public static void main(String[] args) {
try {
FileInputStream file = new FileInputStream(new File("test.xlsx"));
Workbook workbook = WorkbookFactory.create(file);
Sheet sheet = workbook.getSheetAt(0);
int columnIndex = 0; //指定要读取的列号,此处为第一列(从0开始)
for (Row row : sheet) {
Cell cell = row.getCell(columnIndex);
if (cell != null) {
switch (cell.getCellType()) {
case STRING:
System.out.print(cell.getStringCellValue() + "\t");
break;
case NUMERIC:
System.out.print(cell.getNumericCellValue() + "\t");
break;
case BOOLEAN:
System.out.print(cell.getBooleanCellValue() + "\t");
break;
default:
System.out.print("\t");
}
} else {
System.out.print("\t");
}
}
file.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
其中,通过`getSheetAt()`方法获取Excel文件中的第一个Sheet对象,通过`for (Row row : sheet)`遍历每一行数据,再通过`row.getCell(columnIndex)`方法获取指定列的单元格对象,最后根据单元格类型输出单元格内容。注意,列号从0开始计算。