您的位置:首页 > 编程语言 > C#

C#中Console.WriteLine()函数输出格式详解

2016-10-11 09:41 330 查看
格式项都采用如下形式:
{index[,alignment][:formatString]}

其中"index"指索引占位符,这个肯定都知道;
",alignment"按字面意思显然是对齐方式,以","为标记;
":formatString"就是对输出格式的限定,以":"为标记。

alignment:可选,是一个带符号的整数,指示首选的格式化字段宽度。如果“对齐”值小于格式化字符串的长度,“对齐”会被忽略,并且使用格式化字符串的长度作为字段宽度。如果“对齐”为正数,字段的格式化数据为右对齐;如果“对齐”为负数,字段的格式化数据为左对齐。如果需要填充,则使用空白。如果指定“对齐”,就需要使用逗号。

formatString:由标准或自定义格式说明符组成.

下表是从网上得来:

字符
说明
示例
输出
C
货币
string.Format("{0:C3}", 2)
$2.000
D
十进制
string.Format("{0:D3}", 2)
002
E
科学计数法
1.20E+001
1.20E+001
G
常规
string.Format("{0:G}", 2)
2
N
用分号隔开的数字
string.Format("{0:N}", 250000)
250,000.00
X
十六进制
string.Format("{0:X000}", 12)
C
string.Format("{0:000.000}", 12.2)
012.200
Specifier
Type
Format
Output

(Passed

Double 1.42)
Output

(Passed

Int -12400)
c
Currency
{0:c}
$1.42
-$12,400
d
Decimal (Whole number)
{0:d}
System.

FormatException
-12400
e
Scientific
{0:e}
1.420000e+000
-1.240000e+004
f
Fixed point
{0:f}
1.42
-12400.00
g
General
{0:g}
1.42
-12400
n
Number with commas for thousands
{0:n}
1.42
-12,400
r
Round trippable
{0:r}
1.42
System.

FormatException
x
Hexadecimal
{0:x4}
System.

FormatException
cf90
Specifier
Type
Example (Passed System.DateTime.Now)
d
Short date
10/12/2002
D
Long date
December 10, 2002
t
Short time
10:11 PM
T
Long time
10:11:29 PM
f
Full date & time
December 10, 2002 10:11 PM
F
Full date & time (long)
December 10, 2002 10:11:29 PM
g
Default date & time
10/12/2002 10:11 PM
G
Default date & time (long)
10/12/2002 10:11:29 PM
M
Month day pattern
December 10
r
RFC1123 date string
Tue, 10 Dec 2002 22:11:29 GMT
s
Sortable date string
2002-12-10T22:11:29
u
Universal sortable, local time
2002-12-10 22:13:50Z
U
Universal sortable, GMT
December 11, 2002 3:13:50 AM
Y
Year month pattern
December, 2002
a18f

Specifier
Type
Example
Example Output
dd
Day
{0:dd}
10
ddd
Day name
{0:ddd}
Tue
dddd
Full day name
{0:dddd}
Tuesday
f, ff, ...
Second fractions
{0:fff}
932
gg, ...
Era
{0:gg}
A.D.
hh
2 digit hour
{0:hh}
10
HH
2 digit hour, 24hr format
{0:HH}
22
mm
Minute 00-59
{0:mm}
38
MM
Month 01-12
{0:MM}
12
MMM
Month abbreviation
{0:MMM}
Dec
MMMM
Full month name
{0:MMMM}
December
ss
Seconds 00-59
{0:ss}
46
tt
AM or PM
{0:tt}
PM
yy
Year, 2 digits
{0:yy}
02
yyyy
Year
{0:yyyy}
2002
zz
Timezone offset, 2 digits
{0:zz}
-05
zzz
Full timezone offset
{0:zzz}
-05:00
:
Separator
{0:hh:mm:ss}
10:43:20
/
Separator
{0:dd/MM/yyyy}
10/12/2002
示例:

//Console.WriteLine 中各种数据格式的输出
Console.WriteLine("{0,8 :C}",2);
//$2.00
Console.WriteLine("{0,8 :C3}",2);
//$2.000
Console.WriteLine("{0:D3}",2);
//002
Console.WriteLine("{0:E}",2);
//2.000000E+000
Console.WriteLine("{0:G}",2);
//2
Console.WriteLine("{0:N}",2500000.00);
//2,500,00.00
Console.WriteLine("{0:x4}",12);
// 000c
Console.WriteLine("{0,2 :x}",12);
// c
Console.WriteLine("{0:000.000}",12.23);
//012.230
Console.WriteLine("{0:r}",15.62);
//15.62
Console.WriteLine("{0:d}",
System.DateTime.Now); // 2012-3-27
Console.WriteLine("{0:D}",
System.DateTime.Now); // 2012年3月27日

Console.WriteLine("{0:t}",
System.DateTime.Now); //11:43
Console.WriteLine("{0:T}",
System.DateTime.Now); //11:43:34

Console.WriteLine("{0:f}",
System.DateTime.Now); //2012年3月27日 11:43
Console.WriteLine("{0:F}",
System.DateTime.Now); //2012年3月27日 11:43:34

Console.WriteLine("{0:g}",
System.DateTime.Now); // 2012-3-2711:43
Console.WriteLine("{0:G}",
System.DateTime.Now); // 2012-3-2711:43:34

Console.WriteLine("{0:M}",
System.DateTime.Now); // 3月27日
Console.WriteLine("{0:r}",
System.DateTime.Now);// Tue, 27 Mar 201211:43:34 GMT
Console.WriteLine("{0:s}",
System.DateTime.Now); // 2012-03-27T11:43:34
Console.WriteLine("{0:u}",
System.DateTime.Now); // 2012-03-2711:43:34Z
Console.WriteLine("{0:U}",
System.DateTime.Now); //2012年3月27日 3:43:34
Console.WriteLine("{0:Y}",
System.DateTime.Now); //2012年3月

Console.WriteLine("{0:dd}",
System.DateTime.Now); //27
Console.WriteLine("{0:ddd}",
System.DateTime.Now); // 二
Console.WriteLine("{0:dddd}",
System.DateTime.Now);// 星期二

Console.WriteLine("{0:f}",
System.DateTime.Now); //2012年3月27日 11:46
Console.WriteLine("{0:ff}",
System.DateTime.Now); //18
Console.WriteLine("{0:fff}",
System.DateTime.Now); //187
Console.WriteLine("{0:ffff}",
System.DateTime.Now); // 1875
Console.WriteLine("{0:fffff}",
System.DateTime.Now); // 18750

Console.WriteLine("{0:gg}",
System.DateTime.Now); // 公元
Console.WriteLine("{0:ggg}",
System.DateTime.Now); // 公元
Console.WriteLine("{0:gggg}",
System.DateTime.Now); // 公元
Console.WriteLine("{0:ggggg}",
System.DateTime.Now); // 公元
Console.WriteLine("{0:gggggg}",
System.DateTime.Now); // 公元

Console.WriteLine("{0:hh}",
System.DateTime.Now); //11
Console.WriteLine("{0:HH}",
System.DateTime.Now); //11

Console.WriteLine("{0:mm}",
System.DateTime.Now); //50
Console.WriteLine("{0:MM}",
System.DateTime.Now); //03

Console.WriteLine("{0:MMM}",
System.DateTime.Now); // 三月
Console.WriteLine("{0:MMMM}",
System.DateTime.Now);// 三月

Console.WriteLine("{0:ss}",
System.DateTime.Now); //43
Console.WriteLine("{0:tt}",
System.DateTime.Now); // 上午

Console.WriteLine("{0:yy}",
System.DateTime.Now); //12
Console.WriteLine("{0:yyyy}",
System.DateTime.Now); // 2012
Console.WriteLine("{0:zz}",
System.DateTime.Now); //+08
Console.WriteLine("{0:zzz}",
System.DateTime.Now); //+08:00
Console.WriteLine("{0:hh:mm:ss}",
System.DateTime.Now); //11:43:34
Console.WriteLine("{0:dd/MM/yyyy}",
System.DateTime.Now);// 27-03-2012
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: