舍入至少2到4位小数

时间:2011-07-29 11:05:42

标签: c# .net

如何将decimal舍入至少2个小数位并将其保存为decimal

我知道我可以这样做,但它有代码味道。

var myResult = Decimal.Parse(myDecimal.ToString("0.00##"));

这些是预期的结果。

0.028 -> 0.028
0.02999 -> 0.03

5 个答案:

答案 0 :(得分:5)

您可以使用

Math.Round(myResult, 4);

答案 1 :(得分:4)

decimal没有(或者可能不应该)具有“小数位数”,直到您将其格式化以便显示。

答案 2 :(得分:1)

查看Math.Round(decimal, Int32)方法:

Math.Round(myDecimal, 4);

答案 3 :(得分:1)

尝试使用f format specifier

var myResult = Decimal.Parse(myDecimal.ToString("f"));

答案 4 :(得分:0)

decimal.Round(Decimal myDecimal, int digits#);

EX:

decimal.Round(100.555555, 2); // result = 100.56

Math.Round(Decimal myDecimal, int digits#);

EX:

Math.Round(100.555555, 2);  // result = 100.56