【问题标题】:Format decimal number c#格式化十进制数c#
【发布时间】:2020-07-21 09:44:59
【问题描述】:

有没有办法将这个数字 36.9308706956375 格式化为 36,930.87 ? 我尝试了各种模式,包括下面的模式,它似乎不起作用。它返回 36,93。

decimal dec = 36.9308706956375;
var num = String.Format(CultureInfo.GetCultureInfo("ro-RO"), "{0:#,##0.00}", dec);

谢谢

【问题讨论】:

标签: c#


【解决方案1】:

用千位运算符格式化36.9308706956375 没有意义,所以我必须将它乘以1000

(36.9308706956375 * 1000).ToString("N2")

或者

String.Format("{0:N2}", 36.9308706956375 * 1000)

更多数字格式可以在here in the official docs找到。

【讨论】:

  • 我认为 OP 可能使用逗号作为小数位分隔符而不是句点,然后他们希望小数点后每 3 位有一个千位分隔符,例如 36,930.870.695.637.5,但它不是很清楚。
猜你喜欢
  • 1970-01-01
  • 2013-08-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-09
  • 1970-01-01
相关资源
最近更新 更多