数字到字符串(总是2位小数)

时间:2014-04-29 10:05:44

标签: c# format

我想用标记(C#)显示一个带有2位小数的双值,没有像13或13.5或13.505这样的值 它始终显示13.00

2 个答案:

答案 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"