使用Java POI读取excel并将String值设置为Integer

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Java POI读取excel并将String值设置为Integer相关的知识,希望对你有一定的参考价值。

我尝试使用java poi读取excel数据并尝试存储在数据库中。

我从excel中读取了这些值

Integer.parseInt(formatter.formatCellValue(row.getCell(columnNum))) 

其中,excel可能在列中包含空值。所以它抛出一个错误

java.lang.NumberFormatException: For input string: "" 

当尝试将excel值设置为Integer时

riskVo.setProbability(Integer.parseInt(formatter.formatCellValue(row.getCell(columnNum))));

注意:概率是一种整数数据类型。

但是如果列不为null,它接受值。

这是excel文件。

enter image description here错误发生在第二行第二列,其中包含空列。如果列有值,则它可以正常工作。

答案

请注意,""NULL之间存在差异。你得到的例外是因为空字符串"",它与NULL不同。

例如 :

String s  = "";
s.length ()// it will return 0

但,

String s  = null;
s.length ()// throw NPE.

所以,你可能首先检查,如果String不是null然后检查它是否为空。

if(str != null && !str.isEmpty()) {

以上是关于使用Java POI读取excel并将String值设置为Integer的主要内容,如果未能解决你的问题,请参考以下文章

java poi读取xls数据是出错

java使用poi解析或处理excel的时候,如何防止数字变成科学计数法的

Java POI读取excel中数值精度损失

Java对Excel解析(求助)

java用poi往excel里写数据遇到换行问题

java poi导出excel