gpt4 book ai didi

c# - 将 double 更改为字符串后的字符串格式

转载 作者:行者123 更新时间:2023-11-30 22:22:26 25 4
gpt4 key购买 nike

我有一个 double,我想把它改成一个字符串,像这样:

double value;
string myString = value.toString();

当 value 是小数点后少于 4 位的数字时,它可以正常工作。例如,如果值为 0,则 myString 将为 0。如果值为 0.01,则 myString 将为 0.01。

但如果值在小数点后有 4 位或更多位,则 myString 将使用 float 创建(例如,1E-05)。

我希望 myString 以 0.0000000X 的格式创建,用于点后的任意数字,并且永远不要使用 1E-0X 方法。我还希望 myString 尽可能短,例如当值为 0 时,我希望 myString 为 0(而不是 0.000000)。

我该怎么做?谢谢

最佳答案

我不确定是否有一个标准数字格式字符串可以满足您的需求,但您可以使用自定义格式:

double d = 0.0000003;
Console.WriteLine(d.ToString("0.#################"));

我认为这不会处理最终具有超出我指定的有效数字的值。例如,扩展哈希的数量不会帮助处理诸如 3e-20 之类的数字。这对你来说是个问题吗?

请注意,因为您使用的是 double 而不是 decimal,所以在某些情况下,您可能会在算术之后得到一个惊喜...如果您试图保留一个确切数字非常重要的值,您可能应该改用 decimal

关于c# - 将 double 更改为字符串后的字符串格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13834862/

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