首页 > 代码库 > 【渔跟鱼】C#string.Format 格式说明 Writeline格式说明 格式化字符串
【渔跟鱼】C#string.Format 格式说明 Writeline格式说明 格式化字符串
定义
格式说明符的语法由3个字段组成:索引号、对齐说明符和格式字段。String.Format和WriteLine都遵守同样的格式化规则。
对齐说明符
对齐说明符表示了字段中字符的最小宽度。对齐说明符有如下特性。
1、对齐说明符是可选的,并且使用逗号和索引号分离。
2、它由一个正整数或负整数组成。
3、整数表示了字段使用字符的最少数量。
4、符号表示了右对齐或左对齐。正数表示右对齐,负数表示左对齐。
5、如果要表示的字符数比说明符中指定的字符数少,那么其余字符会使用空格填充;
6、如果要表示的字符数多于指定的字符数,对齐说明符会被忽略,并且使用所需的字符进行表示。
格式字段
格式字段指定了数字应该以哪种形式表示。例如应当被当做货币、十进制数、还是定点符号来表示。格式字段有3部分。
1、冒号后必须紧跟格式说明符,中间不能有空格。
2、格式说明符是一个字母字符,是9个内置字符格式之一。字符可以是大写或小写形式。大小写对于某些说明符来说比较重要,而对于另外一些说明符来说则不重要。
3、精度说明符是可选的,由1~2位数字组成。它的实际意义取决于格式说明符。
示例:
标准格式字符串
字符 | 说明 | 示例 | 输出 |
C | 货币 | string.Format("{0:C3}", 2) | ¥2.000(英文操作系统结果:$0.20) |
D | 十进制 | string.Format("{0:D3}", 2) | 002 |
F | 定点 | string.Format{"0:F4",123.123} | 123.1230 |
E | 科学计数法 | string.Format{"0:E4",0.123456} | 1.2346E+001 |
G | 常规 | string.Format("{0:G}", 2) | 2 |
X | 十六进制 | string.Format("{0:X000}", 12) | C |
N | 逗号或空格隔开数字 | string.Format("{0:N}", 250000) | 250,000.00(默认精度2位) |
P | 百分比 | string.Format{"0:P",0.123456} | 12.34%(默认精度2位) |
R | 往返过程 | string.Format{"0:R",0.123456} | 0.123456 |
日期格式化
string.Format("{0:d}",System.DateTime.Now) 结果为:2016-9-18 (注意:月份不是09)
string.Format("{0:D}",System.DateTime.Now) 结果为:2016年9月18日
string.Format("{0:f}",System.DateTime.Now) 结果为:2016年9月18日 18:14
string.Format("{0:F}",System.DateTime.Now) 结果为:2016年9月18日 18:14:26
string.Format("{0:g}",System.DateTime.Now) 结果为:2016-9-18 18:14
string.Format("{0:G}",System.DateTime.Now) 结果为:2016-9-18 18:14:26
string.Format("{0:m}",System.DateTime.Now) 结果为:9月18日
string.Format("{0:t}",System.DateTime.Now) 结果为:18:14
string.Format("{0:T}",System.DateTime.Now) 结果为:18:14:26
类似
string t1 = System.DateTime.Now.ToShortDateString(); t1=2016/9/18
string t2 = System.DateTime.Now.ToShortTimeString(); t2=18:14
string t3 = System.DateTime.Now.ToLongDateString(); t3=2016年9月18日
string t4 = System.DateTime.Now.ToLongTimeString(); t4=18:14:26
【渔跟鱼】C#string.Format 格式说明 Writeline格式说明 格式化字符串