为什么用poi读取excel 的数字全是double
2个回答
展开全部
这是正常的。
通过POI取出的数值默认都是double,即使excel单元格中存的是1,取出来的值也是1.0,这就造成了一些问题,
如果数据库字段是int,那么就会wrong data type,所以需要对数值类型处理。
代码如下:
Cell cell = null;// 单元格
Object inputValue = null;// 单元格值
if(!isEmpty(cell) && cell.getCellType() == Cell.CELL_TYPE_NUMERIC) {
long longVal = Math.round(cell.getNumericCellValue());
if(Double.parseDouble(longVal + ".0") == doubleVal)
inputValue = longVal;
else
inputValue = doubleVal;
}
这么处理后,单元格中的小数没有变化,如果是整数,也会取到整数。
展开全部
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询