如何將一個數字格式化爲一個固定的小數位數(保持尾隨零),其中位數由變量指定?如何在c#中將Decimal格式化爲編程控制的小數位數?
例如
int x = 3;
Console.WriteLine(Math.Round(1.2345M, x)); // 1.234 (good)
Console.WriteLine(Math.Round(1M, x)); // 1 (would like 1.000)
Console.WriteLine(Math.Round(1.2M, x)); // 1.2 (would like 1.200)
注意,因爲我希望通過編程控制的名額,這樣的String.format是不行的(當然我不應該生成格式字符串):
Console.WriteLine(
string.Format("{0:0.000}", 1.2M)); // 1.200 (good)
我應該包括Microsoft.VisualBasic並使用FormatNumber?
我希望在這裏明顯地丟失一些東西。
如何指定小數作爲變量的數目?我想我可以做(1.2M).ToString(「D」+ x),但這似乎有點hacky – 2009-04-14 20:31:28
好吧,你可以隨時把它轉換爲擴展方法。 – 2009-04-14 20:34:21