使用Decimal.ToString()而不会舍入数字

时间:2014-03-13 09:56:07

标签: c# decimal

我有以下十进制数

string number = "60.9";
Response.Write(Convert.ToDecimal(number).ToString("#,0")); // prints 61

我想将值格式化为99,999,999 ...但如果该值有小数点,则会向上舍入

请让我知道如何打印60.9,而不是61具有相同的数字格式

1 个答案:

答案 0 :(得分:2)

您可以使用N格式。这将显示您的语言环境的组分隔符的数字(例如,,表示美国语言环境,尽管您可以选择影响它),并保留小数部分:

Convert.ToDecimal(number).ToString("N")

更新。在评论中进行一些讨论后,满足所有要求的方法似乎是

Convert.ToDecimal(number).ToString("#,#.##########", CultureInfo.InvariantCulture)

感谢Jon