最近业务上需要通过上传excel后,解析数据。规定用的poi版本是4.0 。特此记录一下 用户模式下 4.0和4.0以前版本的区别。
最主要的区别,就是poi4.0的row的索引是从0开始,而以前的版本是从1开始的。
//4.0+版本
for(int rowNum = 0;rowNum <= lastRowNum;rowNum++){
//具体方法
}
//以前的版本
for (int j = 1; j < sheet.getLastRowNum() + 1; j++) {
XSSFRow row = sheet.getRow(j);
}
第二个区别,就是解析单元格的值有些许不同:
现在的解析方法如下:
/**
* 用户模式得到单元格的值
* @param workbook
* @param cell
* @return
*/
public static String getCellValue(Workbook workbook, Cell cell){
Assert.notNull(workbook, "when you parse excel, workbook is not allowed to be null");
String cellValue = "";
if (cell == null){
return cellValue;
}
switch (cell.getCellType()){
case NUMERIC:
cellValue = getDateValue(cell);
//判断日期类型
if (DateUtil.isCellDateForm