昨天是用的jxl发表的文章 ,本地有路径读取合适。 今天前端小姐姐让我接文件, 然后就用了poi。
话不多说上代码:
注意注意奇坑,之前是HSSFWorkbook和XSSFWorkbook一起处理的但是现在只用HSSFWorkbook就可以处理xls和xlsx
poi版本
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.1.2</version>
</dependency>
具体不知道哪个版本开始改的 注意踩坑嗷
开始
前端传入文件是用MultipartFile 接收的
Workbook workbook=null;
try {
//将表转为流,会you io异常采用了 try-catch
workbook = new HSSFWorkbook(file.getInputStream());
} catch (IOException e) {
e.printStackTrace();
}
Sheet sheet1 = workbook.getSheetAt(0);//获取第一张sheet表
int rows = sheet1.getLastRowNum(); //获取行数
//因为第一行是从0开始数的,i=0 i<rows 或者是 i=1 i<=rows
for(int i =1;i<=rows;i++) {
Row row = sheet1.getRow(i);//循环得到每一行的单元格对象
String name = row.getCell(0).getStringCellValue();
------------------
字段取出 进行字自己的业务逻辑处理
--------------
}
注意注意奇坑,之前是HSSFWorkbook和XSSFWorkbook一起处理的但是现在只用HSSFWorkbook就可以处理xls和xlsx
有问题欢迎留言看到即回