java中科学计数法数字转字符串

开发过程中有可能会遇到很小的数字,在显示过程中就转换成了科学计数法,这种不利于人的观看,于是就有必要转成字符串形式的。so.

将科学计数法的数字转换成字符串:

使用的是java.math的BigDecimal:

BigDecimal bd = new BigDecimal("1.1920928955078125e-7");
String str = bd.toPlainString();

显示结果:

0.00000011920928955078125

亲测好使。。

时间: 2024-11-05 19:34:14

java中科学计数法数字转字符串的相关文章

JAVA中科学计数法转换普通计数法

今天发现数据库里汇总的数据有点大,一输出就被自动转化成科学计数法了.后来发现是转换字符串的方法有问题.如下: String a = "11234567.89"; BigDecimal db = new BigDecimal(a); System.out.println("科学计数:" + db.toString()); System.out.println("普通计数:" + db.toPlainString()); 输出: 科学计数:1.123

JavaScript中科学计数法转化为数值字符串形式

原文地址:https://www.css88.com/archives/9318(受益匪浅) JavaScript 中经常会碰到数值计算问题,偶尔会在不经意间报一个不是bug的bug.今天来说说一个特殊的例子.我以0.0011BTC 价格买入 0.0002CZR 计算出了的金额是 0.00000022BTC,而 JavaScript 计算出来的金额是 2.2e-7 .值是对的,只是用了科学计数法,也是数值类型.但是问题来了,一般用户用户看不懂 2.2e-7,那么就把它转换成 0.00000022

Java把科学计数法转换为字符串

/**  * 把科学计数法转换为字符串  * 1.64607507E8(转化为164607507).1.6.0.0.0  * @param str  * @return  */ private static String number2PlainString(String str){ BigDecimal bd = new BigDecimal(str); return bd.toPlainString(); }

Excel中科学计数法如何转正常显示

当数值型数据达到12位的时候,将以科学计数法的方式显示在单元格内,但是编辑栏仍然正常显示.   右键单击12位数字所在单元格,在弹出的菜单栏中选择设置单元格格式.   在单元格格式中点数字选项卡,点自定义,在类型中输入一个“#”,然后点击确定,设置完之后原来的科学计数法消失,显示为实际的12位数字.   数值型数据最多能存储15位有效数字,如果超过15位,可以事先将单元格格式数字设置成文本. 原文地址:https://www.cnblogs.com/Sunshine-bing/p/1264273

C# 中科学计数法转成正常值

抓取数据的时候碰到科学技术法,查了一些资料,直接贴代码 /// <summary> /// 数字科学计数法处理 /// </summary> /// <param name="strData"></param> /// <returns></returns> private Decimal ChangeToDecimal(string strData) { Decimal dData = 0.0M; if (str

hive 如何处理科学计数法

说明:Hive中int , float , double这些数值类型在存储大额度数字时,在前端展现上总是使用科学计数法来表示, 这样搞的挺烦.举例说明 样例数据: select lte_drop_rate from t_table limit 10; 输出结果: 5.0E-4 7.1E-4 5.41E-4 ... ... 处理方案: select (case --处理非科学计数法表示的字符串 when length(regexp_extract(lte_drop_rate,'([0-9]+\\.

java使用poi解析或处理excel的时候,如何防止数字变成科学计数法的形式和其他常见Excel中数据转换问题

当使用POI处理excel的时候,遇到了比较长的数字,虽然excel里面设置该单元格是文本类型的,但是POI的cell的类型就会变成数字类型. 而且无论数字是否小数,使用cell.getNumbericCellValue() 去获取值的时候,会得到一个double,而且当长度大一点的时候会变成科学计数法形式. 那么获取这个单元格的原始的数据,就其实是一个double怎么转换成整数的问题了. 使用DecimalFormat对这个double进行了格式话,随后使用format方法获得的String就

Java jxl导入excel文件,导入的数字、身份证号码、手机号变成了科学计数法,解决方案

原文出自:https://blog.csdn.net/seesun2012 这是一个execl文件导入数据库操作,使用jxl解析execl导入数据库过程出现了科学计数法,与想要导入的数据不匹配,以下是案例以及解决方案: 导入成功后示例: 1.手机号:15388886666 科学计数法:1.54E+10 2.数字:123456789000000 科学计数法:1.23E+14 3.身份证:432222198808083789 科学计数法:4.32E+17 解决思路: 1.判断是否为数字类型(NUMB

如何使java中double类型不以科学计数法表示

在java中,把一个double或者BigDecimal的小数转换为字符串时,经常会用科学计数法表示,而我们一般不想使用科学计数法,可以通过:DecimalFormat a = new DecimalFormat("#,##0.00000000");        System.out.println(a.format(11111111.0000001000000001));的方式来格式化输出字符串. 对于BigDecimal的小数,如果制定精度<=6, 则可以放心的使用其toS