//解析excel
//1.读取文件输入流
//2.创建Excel工作簿文件(包含.xsl和.xslx格式)
// Workbook wb = WorkbookFactory.create(is);
Workbook workbook = null;
if(excelName.toLowerCase().endsWith("xlsx")){
workbook = new XSSFWorkbook(inputStream);
}else if(excelName.toLowerCase().endsWith("xls")){
workbook = new HSSFWorkbook(inputStream);
//workbook = Workbook.getWorkbook();
}else{
throw new CheckFialException("请传入Excel文件");
}
//3.打开需要解析的Sheet工作表
Sheet sheet = workbook.getSheetAt(1);
//4.遍历工作表对象(本质是个行的集合),读取每一行
for (Row row : sheet) {
//跳过第一行
if (row.getRowNum() == 0) {
continue;
}
//处理每一行
}
}catch(IOException e){
e.printStackTrace();
}
单元格从0开始:
row.getCell(13).getStringCellValue():获取文本类型
row.getCell(26).getNumericCellValue() :获取数字类型 返回的是Double类型
Cell dateCell = row.getCell(10);
String date = new SimpleDateFormat("yyyy-MM-dd").format(dateCell.getDateCellValue());:转换成时间字符串
需要的java包:
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.13</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
<version>3.13</version>
</dependency>
<dependency>
<groupId>org.apache.xmlbeans</groupId>
<artifactId>xmlbeans</artifactId>
<version>2.3.0</version>
</dependency>