Java读取Excel数值内容带.0或变科学计数法的解决办法

时间:2024-03-01 16:20:00

Java读取Excel数值内容带.0或变科学计数法的解决办法

当excel里单元格的内容为纯数字 例如 \'123\'或 \'12345678\' 时,
读取后,会变成 123.0 或科学计数法。
一开始以为是单元格格式问题,发现把单元格改成文本类型也是如此。

网上其他诸如自己写方法进行转换 或者正则表达之类判断的方法,非常局限。

简单的方式

Row row = sheet.getRow(i);
row.getCell(j).setCellType(CellType.STRING); //读取前将单元格设置为文本类型读取

记得可能会报npe
所以加个判空条件

Row row = sheet.getRow(i);
if(valueRow.getCell(j) != null){
    valueRow.getCell(j).setCellType(CellType.STRING);
}