协慌网

登录 贡献 社区

如何显示小数点后两位的小数位?

.ToString()显示小数的值时,准确地喜欢 15 个小数位,并且由于我使用它来表示美元和美分,因此我只希望输出为 2 个小数位。

我是否为此.ToString()的变体?

答案

decimalVar.ToString ("#.##"); // returns "" when decimalVar == 0

或者

decimalVar.ToString ("0.##"); // returns "0"  when decimalVar == 0

我知道这是一个古老的问题,但是我很惊讶地看到没有人发布这个答案。

  1. 没有使用银行家四舍五入
  2. 没有将值保留为小数。

这就是我要使用的:

decimal.Round(yourValue, 2, MidpointRounding.AwayFromZero);

http://msdn.microsoft.com/zh-CN/library/9s0xa85y.aspx

decimalVar.ToString("F");

这会:

  • 四舍五入到小数点后两位 23.45623.46
  • 确保始终有 2 个小数位,例如。 2323.00 ; 12.512.50

显示货币的理想选择。

请查看 ToString(“F”)上的文档(感谢 Jon Schneider)。