【发布时间】:2018-03-22 18:30:14
【问题描述】:
我正在创建一个用于将.xlsx 文件转换为.Json 的Java 程序。我已经使用以下条件验证了单元格数据格式为数字。
else if (rw.getCell(j).getCellType() == Cell.CELL_TYPE_NUMERIC) {
key = "" +sht.getRow(0).getCell(j).getNumericCellValue();
}
我仍然收到此错误:
IllegalStateException:无法从 STRING 单元格中获取 NUMERIC 值。
这怎么可能?
【问题讨论】:
-
你确定
rw和sht.getRow(0)是同一行吗?检查else if (sht.getRow(0).getCell(j).getCellType() == Cell.CELL_TYPE_NUMERIC) -
我也有一个用于数字、字符串和公式(数字和字符串值)的“else if”块。然而,它在相同的步骤中给出了错误。它实际上是日期格式的数据,它卡在这里。到目前为止,我已经在我的 excel 文件中正确编辑和格式化日期值,添加了一个 else 块来获取日期:cell.getDateCellValue();我只在 Excel 中的日期值的 Json 文件中得到一些数字,如 45645。
标签: java illegalstateexception