首页 > 编程语言 > 解决java读取EXCEL数据变成科学计数法的问题
2021
05-15

解决java读取EXCEL数据变成科学计数法的问题

1.如下图中的检测值存到数据库是科学计数法

2 经过代码处理后

3 只需要对你读到的字符串进行如下操作

BigDecimal bd = new BigDecimal("读到的值");                            
String checkValue = bd.toPlainString();

补充:java excel 导出时长数字变成科学计数法的解决方法

今天在做excel导出的时候,导出的表格中长度大于11的数字会自动用科学计数法显示。

一开始,我想着直接将数据全部转为string类型,没想到还是无法解决问题(可能是excel工具自动识别数字,又将其转成科学计数了)。

后来通过百度发现了多种解决方法,下面两种个人觉得效率比较高,代码改动最少:

1、将要导出的数转为BigDecimal类型

在使用toPlainString转换为String类型

BigDecimal bigDecimal = new BigDecimal(value);
String out = bigDecimal.toPlainString();

2、通过DecimalFormat将数字转换String类型

String out = new DecimalFormat("0.00").format(value);
(其中0.00表示保留的位数)

mysql针对数字类型的转换建议使用convert和cast函数,

format(param,2)
convert(param, decimal(12,2)) 其中12是数字的个数
cast(param as decimal(12,2))

以上为个人经验,希望能给大家一个参考,也希望大家多多支持自学编程网。如有错误或未考虑完全的地方,望不吝赐教。

编程技巧