• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
黄洪波写点东西的地方
博客园    首页    新随笔    联系   管理    订阅  订阅
使用POI导入小数变成浮点数异常

例如   我在Excel中的数据为17.2, 导入到表中就变成了17.1999999或者17.20000001

原因是我用double接收了17.2,然后直接用了String去转换,精度就丢失了。

代码如下

double resultVar;
resultVar = cell.getNumericCellValue();
cellContent = String.valueOf(resultVar);

 

经修改使用 

DecimalFormat df = new DecimalFormat("#.##########");

即可解决该问题,

代码如下

double resultVar;
DecimalFormat df = new DecimalFormat("#.##########");
resultVar = cell.getNumericCellValue();
// cellContent = String.valueOf(resultVar);
cellContent = df.format(resultVar);

 

posted on 2015-12-07 16:03  黄洪波  阅读(1309)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3