gpt4 book ai didi

c# - 将指数数转换为整数

转载 作者:行者123 更新时间:2023-11-30 23:02:51 24 4
gpt4 key购买 nike

"2.3456754342345466E+36" 转换为完整数字:

var sm = Convert.ToDouble(splitted[0]) + Convert.ToDouble(splitted[1]);  

**//sm value is === "2.3456754342345466E+36"**

var d = Decimal.Parse(sm.ToString(),
System.Globalization.NumberStyles.Float);
if (splitted[0].Length ==Convert.ToString(d).Length)
{
sum.Add(""+sm);
}
else
{
sum.Add(""+splitted[0]);
}

Decimal.Parse(sm.ToString() 正在抛出:

Value was either too large or too small for a Decimal.

谁能帮忙。

最佳答案

那是因为 decimal 最大值大约是 7.9e+28,所以它不适合你的数字。您需要将其存储在 double 中。当你想打印数字时,你可以使用带有格式说明符的 ToString() 方法以任何你想要的方式格式化它。例如,F0 将给出一个没有分数的正数:

var sm = "2.3456754342345466E+36";
var d = double.Parse(sm, System.Globalization.NumberStyles.Float);
Console.WriteLine(d.ToString("F0")); //Prints 2345675434234550000000000000000000000

关于c# - 将指数数转换为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50259912/

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