我想用标记(C#)显示一个带有2位小数的双值,没有像13或13.5或13.505这样的值 它始终显示13.00
答案 0 :(得分:11)
您可以将格式传递给to string方法
例如:
ToString("0.00"); //2dp Number
ToString("n2"); // 2dp Number
ToString("c2"); // 2dp currency
http://msdn.microsoft.com/en-us/library/dwhawy9k.aspx
要更改,例如,13.505到13.00,您还希望通过Math.Floor运行它或使用其他建议的方法之一进行舍入。
Math.Floor(value)
http://msdn.microsoft.com/en-us/library/e0b5f0xb.aspx
另一方面,如果您想将13.505更改为13.50,则需要通过Math.Truncate运行它。
Math.Truncate(Value)
http://msdn.microsoft.com/en-us/library/7d101hyf(v=vs.110).aspx
所以要将它们结合在一起:
Double testValue = 13.505;
Double testValueTruncated = Math.Truncate(100 * testValue) / 100;
string withDecimalPlaces = testValueTruncated.ToString("0.00");
withDecimalPlaces现在将具有值" 13.50"
答案 1 :(得分:2)
尝试这种方法
double i=12.22222; //first variable
double j=1.2545; //second variable
double h=i*j; // multiple first and second
string s=h.ToString("0.00"); // convert to string and proper format
这次转发
s="15.33"