String.Format()转换十进制?到###,###,###。00格式

时间:2015-12-07 13:22:30

标签: c# string-formatting

我试图转换小数?价格到格式化价格。我需要这样的价格格式: 222,777,333.00 这是我的代码:String.Format(item.SalePrice.ToString(), "###,###,###.00")。 结果:99999.000000 求助。

4 个答案:

答案 0 :(得分:2)

这是你应该怎么做的:
item.SalePrice.ToString("N2");

答案 1 :(得分:2)

尝试item.SalePrice.ToString("###,###,###.00");

有效:)

答案 2 :(得分:1)

尝试

item.SalePrice.ToString("N");

查看this msdn article以了解有关Decimal.ToString()

的更多选项

答案 3 :(得分:1)

2精度说明符中使用The numeric ("N") format specifier,其文化的NumberGroupSeparatorNumberDecimalSeparator,InvariantCulture(如{{3}})是您案例的最佳方式。

.

如果您未指定任何文化,默认情况下此方法会使用item.SalePrice.ToString("N2", CultureInfo.InvariantCulture) ,如果您的CurrentCulture 可能会获得不同的代表}具有这些属性的不同说明符。