假设我必须格式化以下十进制数字,以便每千位应使用空格分隔:

 897.11 to 897.11
 1897.11 to 1 897.11
 12897.11 to 12 897.11
 123897.11 to 123 897.11

我已经尝试过Decimal.ToString(“0 000.00”)。虽然当数字为1897.11时效果很好。但是当它是897.11时,我得到0 897.11。

最佳答案

通过自定义 NumberFormatInfo 传递自定义 NumberGroupSeparator property,并使用 #,# format告诉它进行数字分组。本示例使用不变区域性的数字格式作为基础。

var nfi = (NumberFormatInfo)CultureInfo.InvariantCulture.NumberFormat.Clone();
nfi.NumberGroupSeparator = " ";
string formatted = 1234897.11m.ToString("#,0.00", nfi); // "1 234 897.11"

关于c# - 我如何在C#中用空格分隔数千个,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17527847/

10-09 16:08