我使用以下代码将小数舍入为2位小数。
decimal? RTime = RTime.HasValue ? Decimal.Round(RTime.Value, 2) : 0;
但转换数字像512-> 512.00无法正常工作。我该怎么做?
答案 0 :(得分:2)
Decimal.Round
舍入小数的值。例如512.123
到512.12
。
您想要的是字符串表示。您需要格式化值而不是舍入。您可以使用ToString()
:
decimal? RTime = RTime.HasValue ? Decimal.Round(RTime.Value, 2) : 0;
string RTimeAsString = RTime.Value.ToString("0.00");
或string.Format
或字符串插值如下:
string RTimeAsString = string.Format("{0:0.00}", RTime);
string RTimeAsString = $"{RTime:0.00}"
答案 1 :(得分:2)
我认为你混淆了舍入和格式化。