c#格式化为双精度到n位小数

时间:2014-11-28 13:56:56

标签: c# string

我想要在komma之后不断显示n位小数..

所以(for = 2)如果我有13.4589它应该显示13.49;如果它是1512.0000它应该显示1512.00而不仅仅是1512

我试过了:

double value; //does contain the value to dislplay
int numberOfDecimals; //does contain the number of decimals I want to have permanently displayed

///first try
int temp = Convert.ToInt32(Math.Pow(10, numberOfDecimals));
string result1 = ((Math.Truncate(value * temp) / temp).ToString();

///second try
string temp = "0.";
for(int i = 0; i<numberOfDecimals;i++)
{
temp = temp + "#";
}
string result2 = value.ToString(temp);

两者都没有产生想要的输出(只要出现&#34; .000&#34;出现后,komma没有被显示的零)。我需要更改什么?

1 个答案:

答案 0 :(得分:2)

您可以使用F Format specifier

string result1 = ((Math.Truncate(value * temp) / temp).ToString("F2");