【问题标题】:How to add decimal separator to a grouped (money like) number?如何将小数分隔符添加到分组(金钱之类)数字?
【发布时间】:2017-09-23 13:43:33
【问题描述】:

总结

{0:#,##}{0:#,#} 有区别吗?我知道. 确定了结果字符串中小数点分隔符的位置,, 既用作组分隔符又用作数字缩放说明符。作为组分隔符,它在每个组之间插入一个本地化的组分隔符。作为数字缩放说明符,它为每个指定的逗号将数字除以 1000。

示例

看一些例子:

original    #,##      #,#
12568    -> 12,568    12,568
12568.12 -> 12,568    12,568
1.12     -> 1         1
.12      -> Error    Error

即使有错误,它们都是一样的。

问题

为什么示例中没有小数部分?如何将小数分隔符添加到分组(金钱之类)数字?

【问题讨论】:

    标签: c# format


    【解决方案1】:

    请看这里:Custom Numeric Format Strings

    问题出在,。您的文化小数点分隔符是 .,而不是 ,

    如果您将, 替换为.,您将得到:

    original    #.##       #.#
    12568    -> 12568      12568
    12568.12 -> 12568.12   12568.1
    1.12     -> 1.12       1.1
    1.56     -> 1.56       1.6 //new (see rounding)
    

    此外,您可以传递使用 , 作为小数分隔符的所需 IFormatProvider,您的示例将使用 ,

    因此,在最后一个示例中可以看到差异 - 可以进行舍入。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-03
      • 2013-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      • 2016-01-20
      相关资源
      最近更新 更多