如何在小数点后加零

How to add zeros after decimal point

假设我有这样的小数:

decimal a= 12.1

但我希望它是:

a=12.10

是否可以不使用 .toString()? 我尝试使用 decimal.Round() 但这仍然设置了 =12.1

澄清: 数据例如。 12.1 是从 web 服务收到的,所以我不能简单地将它更改为 12.10M

实际上,.NET 的 decimal 类型确实在小数点后包含零。你只需要使用十进制文字:

var a = 12.10M;

如果您需要实时值而不是编译时值,您可以与另一个十进制文字相乘,例如:

var a = someDecimalInput;
return a * 1.0000M; // Ensures at least four digits after the decimal point.

但是,我仍然建议不要这样做 - 格式化最好留给表示层,这就是您要处理要显示多少小数点的地方。你通常会使用类似 a.ToString("f2").

的东西