日期:2014-05-20  浏览次数:21049 次

poi 解析excel 浮点数和整数的读取
本帖最后由 pyptyhb 于 2013-01-19 10:47:07 编辑
各位,我现在做数据导入,用poi解析excel,现在遇到一个问题,因为poi解析到的数值类型的数据,默认会转成double类型,我判断如果类型是CELL_TYPE_NUMERIC,想做特殊处理,现在有两个问题,请教一下大家:
   1.这一列里可能有整数,也可能有浮点数,整数的,读取出来,要去点后边的".0",小数是多少就是多少,目前这个不知道怎么处理;
   2.第二个问题是,如果,第一个问题,我通过判断是否以.0结尾方法来处理的话,那如果这个单元格里,输入的是如"313463165464146.26"(甚至会更长)的数据,这会变成科学计数的,这样读取出来,还是不准确。

  以上,我用
Double d = cell.getNumericCellValue();
DecimalFormat df = new DecimalFormat("#");
String value = df.format(d);
来处理,是可以做到把科学计数变成正常的数字,但如果有小数,小数部分会被忽略掉。

 所以,大家有木有什么好的办法和建议呀?
excel java poi

------解决方案--------------------
上面写错了,是
DecimalFormat df = new DecimalFormat("#.#########");

------解决方案--------------------
都当成字符串处理吧,String.valueOf(),然后想怎么弄怎么弄,我解析就是这样处理的