2010-11-30 91 views
5

我有下面的數字。我想在十進制後顯示一位數字。如何格式化?字符串格式的一位小數

2.85 
2 
1.99 

我用( 「{0:0.0}」,但數據顯示等

2.9 //It should be 2.8 
2.0 //It should be 2 
2.0 //It should be 1.9 
+1

(嚴格圓鋼非常不尋常) – 2010-11-30 06:48:29

回答

7

嘗試使用"{0:0.#}"作爲格式字符串然而,這將只固定.0爲了固定。四捨五入到總是本輪下跌,您可能需要使用:

string s = (Math.Floor(value * 10)/10).ToString("0.#"); 
2
Decimal[] decimals = { new Decimal(2.85), new Decimal(2), new Decimal(1.99) }; 

foreach (var x in decimals) 
{ 
    Console.WriteLine(string.Format("{0:0.#}", Decimal.Truncate(x * 10)/10)); 
} 

// output 
2.8 
2 
1.9