EasyExcel读入数字类型数据时出现小数位丢失精度问题

这里写自定义目录标题

问题现象

目前使用easyExcel读取导入文档时发现文档中的小数值4076204076.65会被读取为4076204076.6500001

尝试去查看了excel解压后的文件,发现这条数据在xml里存储的值就是4076204076.6500001,即是excel存储小数本身存在的问题,easyExcel没毛病。

解决方案

java 复制代码
// 去除小数末尾0
result = readCellData.getNumberValue()
	.stripTrailingZeros()
	.toPlainString();

使用readCellData.getNumberValue()方法获取数值,此数值经过了easyExcel四舍五入了,我们只需要去除小数位末尾的0,就能获取到真正的数据4076204076.65。

相关推荐
我爱Jack21 分钟前
ObjectMapper 在 Spring 统一响应处理中的作用详解
java·开发语言
捡田螺的小男孩30 分钟前
京东一面:接口性能优化,有哪些经验和手段
java·后端·面试
小白杨树树36 分钟前
【SSM】SpringMVC学习笔记8:拦截器
java·开发语言
艾露z38 分钟前
深度解析Mysql中MVCC的工作机制
java·数据库·后端·mysql
冷心笑看丽美人39 分钟前
Spring MVC 之 异常处理
java·开发语言·java-ee·spring mvc
神仙别闹40 分钟前
基于Java(SpringBoot、Mybatis、SpringMvc)+MySQL实现(Web)小二结账系统
java·spring boot·mybatis
超级小忍40 分钟前
Java集合中Stream流的使用
java·开发语言
趁你还年轻_1 小时前
Spring 官方推荐构造函数注入
java·spring·log4j
xiaohezi1 小时前
Rag chunk 之:Excel 文档解析
excel