C#.ToString()格式大全

转自:http://blog.csdn.net/haylhf/article/details/7842009

 

stringstr1=string.Format("{0:N1}",56789);               //result: 56,789.0

stringstr2=string.Format("{0:N2}",56789); //result: 56,789.00

stringstr3=string.Format("{0:N3}",56789); //result: 56,789.000

stringstr8=string.Format("{0:F1}",56789);               //result: 56789.0

stringstr9=string.Format("{0:F2}",56789);               //result: 56789.00

stringstr11 =(56789 /100.0).ToString("#.##");          //result: 567.89

stringstr12 =(56789 / 100).ToString("#.##");             //result: 567

C c货币

Console.Write("{0:C}", 2.5);//$2.50

Console.Write("{0:C}", -2.5);//($2.50)

D d十进制数

Console.Write("{0:D5}", 25);//00025

E e科学型

Console.Write("{0:E}", 250000);//2.500000E+005

F f固定点

Console.Write("{0:F2}", 25);//25.00

Console.Write("{0:F0}", 25); //25

G g常规

Console.Write("{0:G}", 2.5);//2.5

N n数字

Console.Write("{0:N}", 2500000);//2,500,000.00

X x十六进制

Console.Write("{0:X}", 250); //FA

Console.Write("{0:X}", 0xffff);//FFFF

C 货币

2.5.ToString("C")  2.50

十进制数

25.ToString("D5")    00025

E科学型

25000.ToString("E")   2.500000E+005

固定点

25.ToString("F2")    25.00

G 常规

2.5.ToString("G")     2.5

N 数字

2500000.ToString("N")      2,500,000.00

十六进制

255.ToString("X")     FF

formatCode是可选的格式化代码字符串。(详细内容请搜索“格式化字符串”查看)

必须用“{”和“}”将格式与其他字符分开。如果恰好在格式中也要使用大括号,可以用连续的两个大括号表示一个大括号,即:“{{”或者“}}”。

常用格式举例:

1 int i=12345;

this.textBox1.Text=i.ToString();

//结果 12345this指当前对象,或叫当前类的实例)

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 123

this.textBox2.Text=s2;

//结果 the value is123.450

3double i=12345.6789;

this.textBox1.Text=i.ToString("f2");//结果 12345.68

this.textBox2.Text=i.ToString("f6");

//结果 12345.678900

4double i=12345.6789;

this.textBox1.Text=i.ToString("n");//结果 12,345.68

this.textBox2.Text=i.ToString(n4); //结果12,345.6789

5double 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 valueis 12.6%

6 DateTime dt =new DateTime(2003,5,25);

this.textBox1.Text=dt.ToString("yy.M.d");

//结果 03.5.25

this.textBox2.Text=dt.ToString(yyyyM月”);

//结果 20035

Convert.ToDateTime("2005/12/2222:22:22").ToString("yyyy/MM/dd HH:mm:ss")

"2005/12/22 22:22:22"

7 int i=123;

double j=123.45;

strings=string.Format("i:{0,-7},j:{1,7}",i,j);

//-7表示左对齐,占7

this.textBox1.Text=s ;

//结果i:123 ,j: 123.45

 

 

补充:

1C#中用最简单的方法把数字(不含小数)转换为千分位格式:      1234567变成1,234,567

    方法:1234567.ToString("###,###")    1234567.ToString("N0") 

 

2C#中把数字转换成带两位小数的千分位字符:

    1234567.891变成1,234,567.89

    方法:String.Format("{0:N}",1234567.891);  //默认为两位小数,如果没有小数位,则小数位补两个0

    或:String.Format("{0:N2}",1234567.891);

posted on 2013-05-09 13:40  寒云  阅读(299)  评论(0编辑  收藏  举报