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。

相关推荐
程序员清风13 小时前
程序员兼职必看:靠谱软件外包平台挑选指南与避坑清单!
java·后端·面试
皮皮林55114 小时前
利用闲置 Mac 从零部署 OpenClaw 教程 !
java
洋洋技术笔记19 小时前
Spring Boot配置管理最佳实践
spring boot
华仔啊19 小时前
挖到了 1 个 Java 小特性:var,用完就回不去了
java·后端
SimonKing20 小时前
SpringBoot整合秘笈:让Mybatis用上Calcite,实现统一SQL查询
java·后端·程序员
日月云棠1 天前
各版本JDK对比:JDK 25 特性详解
java
用户8307196840822 天前
Spring Boot 项目中日期处理的最佳实践
java·spring boot
JavaGuide2 天前
Claude Opus 4.6 真的用不起了!我换成了国产 M2.5,实测真香!!
java·spring·ai·claude code
IT探险家2 天前
Java 基本数据类型:8 种原始类型 + 数组 + 6 个新手必踩的坑
java
花花无缺2 天前
搞懂new 关键字(构造函数)和 .builder() 模式(建造者模式)创建对象
java