|
|
@ -54,7 +54,17 @@ public class ExcelUtil { |
|
|
|
// return ret;
|
|
|
|
// }
|
|
|
|
|
|
|
|
public static String getCellValue(Cell cell) { |
|
|
|
public static String getCellValue(Cell cell){ |
|
|
|
return getCellValue(cell,false); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* |
|
|
|
* @param cell 单元格 |
|
|
|
* @param strAsDate 是否将String优先作为日期解析 |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
public static String getCellValue(Cell cell,boolean strAsDate) { |
|
|
|
String ret; |
|
|
|
if(ObjectUtil.isNull(cell)){ |
|
|
|
return ""; |
|
|
@ -74,7 +84,7 @@ public class ExcelUtil { |
|
|
|
Workbook wb = cell.getSheet().getWorkbook(); |
|
|
|
CreationHelper crateHelper = wb.getCreationHelper(); |
|
|
|
FormulaEvaluator evaluator = crateHelper.createFormulaEvaluator(); |
|
|
|
ret = getCellValue(evaluator.evaluateInCell(cell)); |
|
|
|
ret = getCellValue(evaluator.evaluateInCell(cell),strAsDate); |
|
|
|
break; |
|
|
|
case NUMERIC: |
|
|
|
if (org.apache.poi.ss.usermodel.DateUtil.isCellDateFormatted(cell)) { |
|
|
@ -89,9 +99,13 @@ public class ExcelUtil { |
|
|
|
ret = cell.getStringCellValue(); |
|
|
|
break; |
|
|
|
} |
|
|
|
try { |
|
|
|
ret = String.valueOf(cn.hutool.core.date.DateUtil.parse(cell.getStringCellValue()).getTime()); |
|
|
|
}catch (DateException e){ |
|
|
|
if(strAsDate){ |
|
|
|
try { |
|
|
|
ret = String.valueOf(cn.hutool.core.date.DateUtil.parse(cell.getStringCellValue()).getTime()); |
|
|
|
}catch (DateException e){ |
|
|
|
ret = cell.getRichStringCellValue().getString(); |
|
|
|
} |
|
|
|
}else { |
|
|
|
ret = cell.getRichStringCellValue().getString(); |
|
|
|
} |
|
|
|
break; |
|
|
|