POI Excel 报错 java.lang.IllegalStateException: Cannot get a STRING value from a NUMERIC cell

时间:2024-03-15 11:38:14

前言

前端时间公司IPO 审计,整理数据忙的不可开交,整理千万数据只能使用程序,于是我使用poi 读取Excel表格来进行对比,简单来说下吧,我这边比对的是保单号+金额,需要对比两个系统中的数据,我把数据抽取出来后放到Excel表中,接下来就说碰到的问题吧 。

PS: POI 简单入门使用教程:点击这里

1.错误截图

POI Excel 报错 java.lang.IllegalStateException: Cannot get a STRING value from a NUMERIC celljava.lang.IllegalStateException: Cannot get a STRING value from a NUMERIC cell

2.Excel表截图

POI Excel 报错 java.lang.IllegalStateException: Cannot get a STRING value from a NUMERIC cell

3.分析原因

由于我的数据都是一列,POI不会认为是文本,就算Excel表中设置文本格式,POI 也不会认为文本,它会认为是数字,所以需要我们转换下格式。
POI Excel 报错 java.lang.IllegalStateException: Cannot get a STRING value from a NUMERIC cellrow.getCell(0).setCellType(CellType.STRING);

这个时候系统会报个方法过时警告:
POI Excel 报错 java.lang.IllegalStateException: Cannot get a STRING value from a NUMERIC cell这个问题我去了解了一下,暂时没找到好的解决办法,所以我就没改,虽然警告过时,但是还可以使用。

有好办法的大牛,希望评论指正。


记录问题.提高自己.保护头发.从我做起。