Java处理Excel的问题
我的程序在循环读取单元格值的时候,用的是
- Java code
String value=cell.getStringCellValue()
java.lang.NumberFormatException: You cannot get a string value from a numeric cell
org.apache.poi.hssf.usermodel.HSSFCell.getStringCellValue(HSSFCell.java:775)
snt.ssi.web.utils.HandlerExcel.revolveDatas(HandlerExcel.java:69)
snt.ssi.web.utils.HandlerExcel.handler(HandlerExcel.java:45)
snt.ssi.web.action.rules.DataClearAction.doJob(DataClearAction.java:35)
snt.ssi.web.action.BaseAction.execute(BaseAction.java:46)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
大家帮忙解决一下!
[解决办法]
- Java code
public static Object getCellValue(HSSFCell cell) { if (cell == null) return null; switch (cell.getCellType()) { case HSSFCell.CELL_TYPE_STRING:// 获取字符串类型 return cell.getRichStringCellValue(); case HSSFCell.CELL_TYPE_BOOLEAN:// 获取布尔类型 return cell.getBooleanCellValue(); case HSSFCell.CELL_TYPE_NUMERIC:// 获取数字类型 return (HSSFDateUtil.isCellDateFormatted(cell) == true) ? cell .getDateCellValue() : cell.getNumericCellValue(); case HSSFCell.CELL_TYPE_FORMULA: // 获取公式 return cell.getCellFormula(); default: return ""; } }