C#中一般常用内置类型的字母格式来格式化数字,下面我汇总一下常用的类型:

(1)十进制固定位 D

int i=17;
i.ToString("D3");
//输出结果:017

(2)常规保留指定位有效数字 G

decimal i=17.3651m;
i.ToString("G3");
//输出结果:17.4

•注意它是四舍五入。

(3)保留指定小数位数 F

decimal i=17.3651m;
i.ToString("F2");
//输出结果:17.37

•注意它是四舍五入。

(4)整型十六进制格式 X

int i = 255;
i.ToString("X");
//输出结果:FF

(5)逗号分隔的数字格式 N

decimal i = 55668000.66m;
i.ToString("N1");
//输出结果:55,668,000.7

•注意N后的数字为保留小数位,不写默认是2,取舍也是四舍五入。

(6)带货币符号的格式 C

decimal i = 55668000.66m;
i.ToString("C1");
//输出结果:¥55,668,000.7

•注意C后的数字为保留小数位,不写默认是2,取舍也是四舍五入。

(7)科学计数法 E

decimal i = 55668000.66m;
i.ToString("E");
//输出结果:5.566800E+007

以上就是全部的内置字母格式,除此外我们常用到的还是自定义格式串。在自定义格式中只要掌握#和0的使用基本就可以了。
其中0表示占位符和填充符(0)。
#表示占位符。
举下面几个例子就明白了:

string s1= string.Format("{0:#.00}", 2500.685);//结果:2500.69
string s2 = string.Format("{0:##.00}", 2500.685);//结果:2500.69
string s3 = string.Format("{0:0.##}", 2500.685);//结果:2500.69
string s4 = string.Format("{0:000000}", 2500.685);//结果:002501
string s5 = string.Format("{0:#####}", 2500.685);//结果:2501
string s6 = string.Format("{0:##}", 2500.685);//结果:2501

以上就是我的汇总,希望能帮到你。