gpt4 book ai didi

c# - C# double 格式的问题

转载 作者:行者123 更新时间:2023-11-30 18:54:08 27 4
gpt4 key购买 nike

我正在使用下一个代码来格式化 double 值:

String.Format("${0:0,0.#}",...);

它工作得很好,但是当数字小于 10 时,我遇到了问题。例如,数字显示为 $03、$06。

请告诉我正确的字符串在下一个格式 ddd,ddd,ddd,ddd.dd 中有一个双数

最佳答案

试试这个:

string result = string.Format("${0:#,##0.00}", d);

如果您的替身代表您应该使用的货币:

string result = string.Format(CultureInfo.GetCultureInfo("en-US"), "{0:c}", d);

请注意,如果您省略 CultureInfo.InvariantCulture,它可能会在某些计算机上使用 $ 以外的内容显示。例如在我的电脑上 string.Format("{0:c}", d) 给出 2,00 kr 这可能不是你想要的。

在您的示例中,您实际上根本不需要使用 string.Format。您可以改用它:

string s = d.ToString("c", CultureInfo.GetCultureInfo("en-US"));

除了更清晰简洁,还有避免装箱的优点。当然,如果您的格式字符串比示例中的更复杂,那么使用 string.Format 是有意义的。

最后,我建议不要使用 double 值来存储货币。十进制类型可能更合适。

关于c# - C# double 格式的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4570794/

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