這篇文章主要介紹了C#中ToString資料類型格式大全 千分符,需要的朋友可以參考下
用DataFormatString格式化GridView
在 GridView裡面顯示資料,要顯示的資料有好多位小數,就想讓它只顯示兩位小數,在delphi裡,直接用DisplayFormat就行了, 在.net中,查了半天msdn,發現使用DataFormatString是可以實現這個功能的,但是怎麼設定就不起作用,最後發現,由於2.0出於安 全性的考慮,還要同時設定HtmlEncode = false,才能夠使DataFormatString生效.
留個記號,下次用的時候,就不用浪費N多時間了.
還有還有,DataFormatString = "{0:F}",是預設格式,顯示兩位小數,如果需要顯示的小數位元為其他值,DataFormatString = "{0:Fn}"即可.
DataFormatString="{0:格式字串}"
在DataFormatString 中的 {0} 表示資料本身,而在冒號後面的格式字串代表所們希望資料顯示的格式;
數字、貨幣格式:
在指定的格式符號後可以指定小數所要顯示的位元。例如原來的資料為「1.56」,若格式設定為 {0:N1},則輸出為「1.5」。其常用的數值格式如下表所示:
格式字串 輸入 結果
"{0:C}" 12345.6789 $12,345.68"{0:C}" -12345.6789 ($12,345.68)"{0:D}" 12345 12345"{0:D8}" 12345 00012345"{0:E}" 12345.6789 1234568E+004"{0:E10}" 12345.6789 1.2345678900E+004"{0:F}" 12345.6789 12345.68"{0:F0}" 12345.6789 12346"{0:G}" 12345.6789 12345.6789"{0:G7}" 123456789 1.234568E8"{0:N}" 12345.6789 12,345.68"{0:N4}" 123456789 123,456,789.0000"Total: {0:C}" 12345.6789 Total: $12345.68
常用的日期時間格式:
格式 說明 輸出格式
d 精簡日期格式 MM/dd/yyyy
D 詳細日期格式 dddd, MMMM dd, yyyy
f 完整格式 (long date + short time) dddd, MMMM dd, yyyy HH:mm
F
完整日期時間格式
(long date + long time)
dddd, MMMM dd, yyyy HH:mm:ss
g 一般格式 (short date + short time) MM/dd/yyyy HH:mm
G 一般格式 (short date + long time) MM/dd/yyyy HH:mm:ss
m,M 月日格式 MMMM dd
s 適中日期時間格式 yyyy-MM-dd HH:mm:ss
t 精簡時間格式 HH:mm
T 詳細時間格式 HH:mm:ss
C
貨幣
2.5.ToString("C")
¥2.50
D
十進位數
25.ToString("D5")
00025
E
科學型
25000.ToString("E")
2.500000E+005
F
固定點
25.ToString("F2")
25.00
G
常規
2.5.ToString("G")
2.5
N
數字
2500000.ToString("N")
2,500,000.00
X
十六進位
255.ToString("X")
FF
formatCode 是可選的格式化代碼字串。(詳細內容請搜尋“格式化字串”查看)
必須用“{”和“}”將格式與其他字元分開。如果恰好在格式中也要使用大括弧,可以用連續的兩個大括弧表示一個大括弧,即: “{{”或者“}}”。
常用格式舉例:
(1) int i=12345;
this.textBox1.Text=i.ToString();//結果 12345(this指當前對象,或叫當前類的執行個體)this.textBox2.Text=i.ToString("d8");//結果 00012345
(2) int i=123;
double j=123.45;string s1=string.Format("the value is {0,7:d}",i);string s2=string.Format("the value is {0,7:f3}",j);this.textBox1.Text=s1 ;//結果 the value is 123this.textBox2.Text=s2;//結果 the value is 123.450
(3)double i=12345.6789;
this.textBox1.Text=i.ToString("f2"); //結果 12345.68this.textBox2.Text=i.ToString("f6");//結果 12345.678900
(4)double i=12345.6789;
this.textBox1.Text=i.ToString("n"); //結果 12,345.68this.textBox2.Text=i.ToString(“n4”); //結果 12,345.6789
(5)double i=0.126;
string s=string.Format("the value is {0:p}",i);this.textBox1.Text=i.ToString("p"); //結果 12.6%this.textBox2.Text=s; //結果 the value is 12.6%
(6) DateTime dt =new DateTime(2003,5,25);
this.textBox1.Text=dt.ToString("yy.M.d");//結果 03.5.25this.textBox2.Text=dt.ToString(“yyyy年M月”);//結果 2003年5月Convert.ToDateTime("2005/12/22 22:22:22").ToString("yyyy/MM/dd HH:mm:ss")"2005/12/22 22:22:22"
(7) int i=123;
double j=123.45;string s=string.Format("i:{0,-7},j:{1,7}",i,j);//-7表示靠左對齊,佔7位this.textBox1.Text=s ;//結果i:123 ,j: 123.45