2009-12-18 147 views

回答

15
?8.ToString("00") 
"08" 
?8.ToString("000") 
"008" 
?128.ToString("000") 
"128" 
?128.ToString("000.00") 
"128,00" 
?128.ToString("0000.##") 
"0128" 

您也可以使用string.Format()方法(如String.Format("{0,10:G}: {0,10:X}", value))或StandardCustom Numeric Format Strings顯示你的電話號碼。

其它有用的例子:

?5/3 
1.6666666666666667 
?String.Format("{0:0.00}", 5/3) 
"1,67" 
?System.Math.Round(5/3, 2) 
1.67 
?(5.0/3).ToString("0.00") 
"1,67" 
?(5/3).ToString("0.00") 
"1,00" 
?(5.0/3).ToString("E") //Exponential 
"1,666667E+000" 
?(5.0/3).ToString("F") //Fixed-point 
"1,67" 
?(5.0/3).ToString("N") //Number 
"1,67" 
?(5.0/3).ToString("C") //Currency 
"1,67 €" 
?(5.0/3).ToString("G") //General 
"1,66666666666667" 
?(5.0/3).ToString("R") //Round-trip 
"1,6666666666666667" 
?(5.0/3).ToString("this is it .") 
"this is it 2" 
?(5.0/3).ToString("this is it .0") 
"this is it 1,7" 
?(5.0/3).ToString("this is it .0##") 
"this is it 1,667" 
?(5.0/3).ToString("this is it #####") 
"this is it 2" 
?(5.0/3).ToString("this is it .###") 
"this is it 1,667" 
+0

更多的信息在這裏:http://msdn.microsoft.com/en-us/library/8wch342y.aspx – 2009-12-18 18:31:50

+0

我花了一段時間回憶一下'?'是一個BASIC捷徑來打印一個值到 安慰。 – 2009-12-18 22:06:38

+0

'?'是Visual Studio的即時窗口中用於獲取變量值的符號:) – serhio 2009-12-18 22:31:18

-2

我不明白你是什麼意思。爲什麼不手動添加0到字符串?

+0

這不是一個好方法,例如,它太僵硬了。請看Serhio的答案,這是更靈活和最安全的方法,而這正是OP正在尋找的! :) – t0mm13b 2009-12-18 18:47:01

+0

+1因爲答案是完全有效的 - 原始問題沒有說明應該如何發生,例如對於i = 18。誰說盧卡不想要「018」? – 2009-12-18 18:55:24

5
i.ToString("D2") 
+0

+1,這對我來說是最好的解決方案。 – 2009-12-18 18:48:18

2

我會使用的ToString()的參數,但這裏是另一種選擇:

int i = 8; 
i.ToString.PadLeft(2, (char)"0")