gpt4 book ai didi

java - Bigdecimal 转字符串

转载 作者:行者123 更新时间:2023-11-29 08:05:35 27 4
gpt4 key购买 nike

我正在尝试上传一个列包含超过 250 位数字的 Excel 字段。当我在excel中输入值时,它会自动将其转换为这种格式1.23456789012345E+256 当我尝试使用 Big Decimal 的 toPlainString 方法读取该值时,它在 15 位数字后返回全 0。如果我给出没有指数的整个数字,同样可以正常工作。当输入为 1.23456789012345E+256 时,如何获取完整数字?

BigDecimal bd = new BigDecimal(String.valueOf("1.23456789012345E+256"));
System.out.println( bd.toPlainString());

返回的字符串

*123456789012345*000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000

最佳答案

How do I get the entire number when the input is 1.23456789012345E+256

这是作为 BigDecimal 的整个数字。

1.23456789012345E+256 == 1234567890123450000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000


为什么要使用 BigDecimal? Excel 使用 double,保留它使用的类型会更有意义。

double d = 1.23456789012345E+256;
System.out.println(d);

打印

1.23456789012345E256

关于java - Bigdecimal 转字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11536403/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com