字符格式化

16:25:452009-10-13下面的这段说明比较难理解,多测试一下实际的应用就可以明白了。
H#N­|p,mj.X /T0T1uM"Q0
零占位符:ITPUB个人空间.aJB1{F*T-i!Q
如果格式化的值在格式字符串中出现“0”的位置有一个数字,则此数字被复制到结果字符串中。小数点前最左边的“0”的位置和小数点后最右边的“0”的位置确定总在结果字符串中出现的数字范围。
$rv)X
UD C4W2W0
“00”
说明符使得值被舍入到小数点前最近的数字,其中零位总被舍去。

数字占位符:ITPUB个人空间_[1]RS u(y+qn8e*S S
如果格式化的值在格式字符串中出现“#”的位置有一个数字,则此数字被复制到结果字符串中。否则,结果字符串中的此位置不存储任何值。ITPUB个人空间p] Z9] c$VB
请注意,如果“0”不是有效数字,此说明符永不显示“0”字符,即使“0”是字符串中唯一的数字。如果“0”是所显示的数字中的有效数字,则显示“0”字符。ITPUB个人空间/ZaR
P;J+f+t7H

“##”
格式字符串使得值被舍入到小数点前最近的数字,其中零总被舍去。

6、日期格式化

string.Format("{0:d}",System.DateTime.Now) 结果为:2009-3-20 (月份位置不是03

string.Format("{0:D}",System.DateTime.Now) 结果为:2009320

string.Format("{0:f}",System.DateTime.Now) 结果为:2009320 15:37

string.Format("{0:F}",System.DateTime.Now) 结果为:2009320 15:37:52

string.Format("{0:g}",System.DateTime.Now) 结果为:2009-3-20 15:38

string.Format("{0:G}",System.DateTime.Now) 结果为:2009-3-20 15:39:27

string.Format("{0:m}",System.DateTime.Now) 结果为:320

string.Format("{0:t}",System.DateTime.Now) 结果为:15:41

string.Format("{0:T}",System.DateTime.Now) 结果为:15:41:50


.Af!x

N2GY0| ^ RW W9s0更详细的说明请下面微软对此的说明或者上msdn上查询。

 

微软MSDNstring.format的方法说明:

名称  说明 
s%h4b:w[1]F,l6M'F3?0String.Format (String, Object) 
将指定的 String 中的格式项替换为指定的 Object 实例的值的文本等效项。ITPUB个人空间 K2T4G#zU
String.Format (String, Object[]) 
将指定 String 中的格式项替换为指定数组中相应 Object 实例的值的文本等效项。
2t1t:L0W3Y,b(p0String.Format (IFormatProvider, String, Object[]) 
将指定 String 中的格式项替换为指定数组中相应 Object 实例的值的文本等效项。指定的参数提供区域性特定的格式设置信息。ITPUB个人空间"}.kOw ^-f[1]j
String.Format (String, Object, Object) 
将指定的 String 中的格式项替换为两个指定的 Object 实例的值的文本等效项。ITPUB个人空间,q$h+V1xb4yC h
String.Format (String, Object, Object, Object) 
将指定的 String 中的格式项替换为三个指定的 Object 实例的值的文本等效项。

标准数字格式字符串

格式说明符  名称  说明 
G/

Y5X'dB;d p5ED

V0C cITPUB个人空间,Ln+P"}&S sp c
 
货币ITPUB个人空间9`/G5O)? Q
U*EX

 
数字转换为表示货币金额的字符串。转换由当前 NumberFormatInfo 对象的货币格式信息控制。

 

 

精度说明符指示所需的小数位数。如果省略精度说明符,则使用当前 NumberFormatInfo 对象给定的默认货币精度。ITPUB个人空间3i*]/WF(l`-Y,J4A
 ITPUB
个人空间 C6D's2D;OLj
D
d
}yq0j/j7u#YD x0 
十进制数ITPUB个人空间 q­Y[1]C_7cb3u W
 
只有整型才支持此格式。数字转换为十进制数字 (0-9) 的字符串,如果数字为负,则前面加负号。

精度说明符指示结果字符串中所需的最少数字个数。如果需要的话,则用零填充该数字的左侧,以产生精度说明符给定的数字个数。ITPUB个人空间5xx[ Z Cx

u
 ITPUB
个人空间

n;x(HQ| ]"T}}dh
E
e
5WT2TA9J yG$N0 
科学记数法(指数)ITPUB个人空间//z‑n w-Q‑{} P

S1m{
 
数字转换为“-d.ddd…E+ddd”“-d.ddd…e+ddd”形式的字符串,其中每个“d”表示一个数字 (0-9)。如果该数字为负,则该字符串以减号开头。小数点前总有一个数字。

 

 

 

精度说明符指示小数点后所需的位数。如果省略精度说明符,则使用默认值,即小数点后六位数字。

格式说明符的大小写指示在指数前加前缀“E”还是“e”。指数总是由正号或负号以及最少三位数字组成。如果需要,用零填充指数以满足最少三位数字的要求。
.{ I4I?+E8p0 ITPUB
个人空间*L d:q$I)qI n]&I8}I
F
fITPUB个人空间 T C#i8`4a*E
 
定点ITPUB个人空间‑v#EQ0x8X/r{(d
 
数字转换为“-ddd.ddd…”形式的字符串,其中每个“d”表示一个数字 (0-9)。如果该数字为负,则该字符串以减号开头。

精度说明符指示所需的小数位数。如果忽略精度说明符,则使用当前 NumberFormatInfo 对象给定的默认数值精度。
2Cx#TJ'AM'C6jn}0 ITPUB
个人空间nm7D]Fz
G
g
!AX6L!v~t3fE0 
常规ITPUB个人空间Z#R3f;]$B+U^
 
根据数字类型以及是否存在精度说明符,数字会转换为定点或科学记数法的最紧凑形式。如果精度说明符被省略或为零,则数字的类型决定默认精度,如下表所示。

Byte SByte3

Int16 UInt165

Int32 UInt3210

Int64 UInt6419

Single7

Double15

Decimal29

如果用科学记数法表示数字时指数大于 -5 而且小于精度说明符,则使用定点表示法;否则使用科学记数法。如果要求有小数点,并且忽略尾部零,则结果包含小数点。如果精度说明符存在,并且结果的有效数字位数超过指定精度,则通过舍入删除多余的尾部数字。

上述规则有一个例外:如果数字是 Decimal 而且省略精度说明符时。在这种情况下总使用定点表示法并保留尾部零。

使用科学记数法时,如果格式说明符是“G”,结果的指数带前缀“E”;如果格式说明符是“g”,结果的指数带前缀“e”ITPUB个人空间P3aa*Y~x[Q)r*a#b
 
%/1P,_

[de'f‑T0N n
-Z.A WD

Z$m)]c0 数字ITPUB个人空间2o­GiF#F n/|Q1o.v

nc
 
数字转换为“-d,ddd,ddd.ddd…”形式的字符串,其中“-”表示负数符号(如果需要),“d”表示数字 (0-9)“,”表示数字组之间的千位分隔符,“.”表示小数点符号。实际的负数模式、数字组大小、千位分隔符以及十进制分隔符由当前 NumberFormatInfo 对象指定。

 

 

 

精度说明符指示所需的小数位数。如果忽略精度说明符,则使用当前 NumberFormatInfo 对象给定的默认数值精度。ITPUB个人空间Z3lj1r5H+n*`­x#t
 ITPUB
个人空间b+AF v+V
P
p
d0h

G`
o m'f0 百分比
.?$S EVZO0 
数字转换为由 NumberFormatInfo.PercentNegativePattern NumberFormatInfo.PercentPositivePattern 属性定义的、表示百分比的字符串,前者用于数字为负的情况,后者用于数字为正的情况。已转换的数字乘以 100 以表示为百分比。

 

精度说明符指示所需的小数位数。如果忽略精度说明符,则使用当前 NumberFormatInfo 对象给定的默认数值精度。ITPUB个人空间cy0fmQN
 
[1]TaMfc {[1]x0R
r

c1cH^2}(M4]i0
 
往返过程

C4M)B5Rbu0 只有 Single Double 类型支持此格式。往返过程说明符保证转换为字符串的数值再次被分析为相同的数值。使用此说明符格式化数值时,首先使用常规格式对其进行测试:Double 使用 15 位精度,Single 使用 7 位精度。如果此值被成功地分析回相同的数值,则使用常规格式说明符对其进行格式化。但是,如果此值未被成功地分析为相同数值,则它这样格式化:Double 使用 17 位精度,Single 使用 9 位精度。

 

虽然此处可以存在精度说明符,但它将被忽略。使用此说明符时,往返过程优先于精度。
‑KzIjG s0 ITPUB
个人空间j)W8gsI
X
x
|6JZzFQ+Z­V0 
十六进制数ITPUB个人空间O-C&H#Xn7DQ5Z
 
只有整型才支持此格式。数字转换为十六进制数字的字符串。格式说明符的大小写指示对大于 9 的十六进制数字使用大写字符还是小写字符。例如,使用“X”产生“ABCDEF”,使用“x”产生“abcdef”

精度说明符指示结果字符串中所需的最少数字个数。如果需要的话,则用零填充该数字的左侧,以产生精度说明符给定的数字个数。ITPUB个人空间N:P'c^X LS
 ITPUB
个人空间;sY+q#_U-c ~;|
任何其他单个字符
4U

Q3Q7S Oh4q h,`2{0 (未知说明符)ITPUB个人空间9F

j[1]h y3F2a8n#{V
 
(未知说明符将引发运行库格式异常。)ITPUB个人空间!/6Ps WSuu$r
 

 

 


$v8V&U q*_}biQ D
b0
自定义数字格式字符串

格式说明符  名称  说明 ITPUB个人空间 w$sFiZ D#L
0

E&@+Z

f&{7O0 零占位符ITPUB个人空间@(n.~
f @ a7@U

 
如果格式化的值在格式字符串中出现“0”的位置有一个数字,则此数字被复制到结果字符串中。小数点前最左边的“0”的位置和小数点后最右边的“0”的位置确定总在结果字符串中出现的数字范围。

 

 

“00”说明符使得值被舍入到小数点前最近的数字,其中零位总被舍去。例如,用“00”格式化 34.5 将得到值 35
g;wU­U+R f%G/m[1]W @0 ITPUB
个人空间;Gx‑mf UFui r1y8j
#ITPUB
个人空间*a!R‑b+L-fyB­_N
 
数字占位符
7W'o5p#o[dx0 
如果格式化的值在格式字符串中出现“#”的位置有一个数字,则此数字被复制到结果字符串中。否则,结果字符串中的此位置不存储任何值。

请注意,如果“0”不是有效数字,此说明符永不显示“0”字符,即使“0”是字符串中唯一的数字。如果“0”是所显示的数字中的有效数字,则显示“0”字符。

“##”格式字符串使得值被舍入到小数点前最近的数字,其中零总被舍去。例如,用“##”格式化 34.5 将得到值 35
E­aSW5S
b!u `z4^0
 
9_m"G(P-H5l+`0E0.ITPUB
个人空间*WJS
I‑]­t$c

 
小数点
#y4os g3I)Xs8_w l0 
格式字符串中的第一个“.”字符确定格式化的值中的小数点分隔符的位置;任何其他“.”字符被忽略。

用作小数点分隔符的实际字符由控制格式化的 NumberFormatInfo NumberDecimalSeparator 属性确定。
%f$q.~mrQ;L7E0 ITPUB
个人空间'x}a

k WwO0I(U P
,
L)@)j%J&W%[f@p]0 
千位分隔符和数字比例换算ITPUB个人空间#P:h P;g/i1_ _
 “,”
字符可作为千位分隔符说明符和数字比例换算说明符。

 

千位分隔符说明符:如果在两个数字占位符(0 #)之间指定一个或多个“,”字符用于设置数字整数位的格式,则在输出的整数部分中每个数字组之间插入一个组分隔符字符。

当前 NumberFormatInfo 对象的 NumberGroupSeparator NumberGroupSizes 属性将确定用作数字组分隔符的字符以及每个数字组的大小。例如,如果使用字符串“#,#”和固定区域性对数字 1000 进行格式化,则输出为“1,000”

数字比例换算说明符:如果在紧邻显式或隐式小数点的左侧指定一个或多个“,”字符,则每出现一个数字比例换算说明符便将要格式化的数字除以 1000。例如,如果使用字符串“0,,”对数字 1000000000 进行格式化,则输出为“100”

可以在同一格式字符串中使用千位分隔符说明符和数字比例换算说明符。例如,如果使用字符串“#,0,,”和固定区域性对数字 10000000000 进行格式化,则输出为“1,000”
"k‑n5?]~}n0 ITPUB
个人空间Z`'N/h Do T
%ITPUB
个人空间BZ5}I_:V/P*A
 
百分比占位符ITPUB个人空间5RM7Q
_3B#R"J

 
在格式字符串中出现“%”字符将导致数字在格式化之前乘以 100。适当的符号插入到数字本身在格式字符串中出现“%”的位置。使用的百分比字符由当前的 NumberFormatInfo 类确定。
(h­do!Z9D|kJ0 ITPUB
个人空间e,B7t ~v w
E0

E+0

E-0

e0

e+0

e-0ITPUB个人空间`}VW,Z-s]M j
 
科学记数法
^9f
i9|,d1]0
 
如果“E”“E+”“E-”“e”“e+”“e-”中的任何一个字符串出现在格式字符串中,而且后面紧跟至少一个“0”字符,则数字用科学记数法来格式化,在数字和指数之间插入“E”“e”。跟在科学记数法指示符后面的“0”字符数确定指数输出的最小位数。“E+”“e+”格式指示符号字符(正号或负号)应总是置于指数前面。“E”“E-”“e”“e-”格式指示符号字符仅置于负指数前面。ITPUB个人空间 n _‑n2y9g` S
 
I1]

u/3h o:/Ak0/ITPUB个人空间;@(_ Ls&Z
 
转义符ITPUB个人空间‑? H j+L.Z
 
C# C++ 中,反斜杠字符使格式字符串中的下一个字符被解释为转义序列。它与传统的格式化序列一起使用,如“/n”(换行)。

 

在某些语言中,转义符本身用作文本时必须跟在转义符之后。否则,编译器将该字符理解为转义符。使用字符串“//”显示“/”

请注意,Visual Basic 中不支持此转义符,但是 ControlChars 提供相同的功能。

b b(vC1H‑ua

R'J)b0 ITPUB个人空间 d
t0^:]hp2e.mo(q

’ABC’

 

 

"ABC"
]2H

g$hVE0 字符串ITPUB个人空间$jr'f8p W7?,|P8QR!nw
 
引在单引号或双引号中的字符被复制到结果字符串中,而且不影响格式化。
9v)f9[1L0}Y^0 
}|:i0~w&P?J0;
!q w Y7G9Pg]8p#[6D

p$]0 部分分隔符ITPUB个人空间G:/9I‑h `0^1e$k4a
 “;”
字符用于分隔格式字符串中的正数、负数和零各部分。
)/0lXE'v(z

[_C0 ITPUB个人空间d2L4|;Ar6I9Z*i
其他ITPUB个人空间d Kibq#`
 
所有其他字符
0B6vTtwK8U0 
所有其他字符被复制到结果字符串中,而且不影响格式化。ITPUB个人空间 a}(j,s3V‑HS@~
 

 

 

 

ITPUB个人空间:k3v‑G|SrY
标准 DateTime 格式字符串

格式说明符  名称  说明 ITPUB个人空间Hf2i(W:aW
h

d
T'M-uu/_ q

q0 短日期模式
Gcd#m:z(a"F+Cp]0 
表示由当前 ShortDatePattern 属性定义的自定义 DateTime 格式字符串。

 

例如,用于固定区域性的自定义格式字符串为“MM/dd/yyyy”
B` P){'@#H@!E0 
0u

k$W S#/ `{0D
j.X D'y1W] @‑R PW
|7D0
 长日期模式

}:tg

[#my0 表示由当前 LongDatePattern 属性定义的自定义 DateTime 格式字符串。

 

 

 

例如,用于固定区域性的自定义格式字符串为“dddd, dd MMMM yyyy”ITPUB个人空间t/J8A#i5{
 ITPUB
个人空间­q;c P1d‑i.q
B)/)?

P
f
#S/­S)u r0 
完整日期/时间模式(短时间)
CA'N&K*AY2`0 
表示长日期 (D) 和短时间 (t) 模式的组合,由空格分隔。ITPUB个人空间

Rf­P4EVpr#P‑z
 ITPUB
个人空间[1][!vO6O

O.Y
FITPUB
个人空间yK0wq UD
 
完整日期/时间模式(长时间)
5~.P6A m^-f0S W}0 
表示由当前 FullDateTimePattern 属性定义的自定义 DateTime 格式字符串。

 

 

 

例如,用于固定区域性的自定义格式字符串为“dddd, dd MMMM yyyy HH:mm:ss”ITPUB个人空间3R;xf i+W;@0Nq U

v
 ITPUB
个人空间W9s|

b;y;z
g
$_ c ^*J4Z0S0 
常规日期/时间模式(短时间)ITPUB个人空间-S"ke1t+B5F­{F
 
表示短日期 (d) 和短时间 (t) 模式的组合,由空格分隔。ITPUB个人空间1fI%j/m P/p
 ITPUB
个人空间&O)]

[


g9v [1]OT
GITPUB
个人空间 5F
F r5G‑o,Gz8/7u

 
常规日期 / 时间模式(长时间) ITPUB 个人空间 O1D[1]} Y­g?e9eu
 
表示短日期 (d) 和长时间 (T) 模式的组合,由空格分隔。
S$G1lt7j9lm0 ITPUB
个人空间 R oA;H0x?$K
M
mITPUB 个人空间 j{B­A+Mu,qf+@R9F
 
月日模式 ITPUB 个人空间 ‑|[1]]#u/{)[
|

 
表示由当前 MonthDayPattern 属性定义的自定义 DateTime 格式字符串。

 

 

 

例如,用于固定区域性的自定义格式字符串为“MMMM dd”
_ X/R6H2e6j+vd d0 
7Sw9u q a,u)kn0o
X#G se2c?T.Q0 
往返日期/时间模式
$U@#N K M&B0 
表示使用保留时区信息的模式的自定义 DateTime 格式字符串。该模式专用于往返 DateTime 格式(包括文本形式的 Kind 属性)。随后将 Parse ParseExact 与正确的 Kind 属性值一起使用可以对格式化的字符串进行反向分析。

自定义格式字符串为“yyyy'-'MM'-'dd'T'HH':'mm':'ss.fffffffK”

用于此说明符的模式是定义的标准。因此,无论所使用的区域性或所提供的格式提供程序是什么,它总是相同的。ITPUB个人空间4v.h4b9ku3h~N'I
 
1gDnHs6K(iq0R
r
#N&s#J

? u!k6WEl0 RFC1123 模式ITPUB个人空间:I%wV)d;Rgm:^
 
表示由当前 RFC1123Pattern 属性定义的自定义 DateTime 格式字符串。该模式是定义的标准,并且属性是只读的。因此,无论所使用的区域性或所提供的格式提供程序是什么,它总是相同的。

 

定义格式字符串为“ddd, dd MMM yyyy HH':'mm':'ss 'GMT'”

格式化不会修改正在格式化的 DateTime 对象的值。因此,应用程序在使用此格式说明符之前必须将该值转换为协调世界时 (UTC)
k#]3mc;I#X0 ITPUB
个人空间&UU d/Tx~J

n
s
M{+C$Vq e T0 
可排序的日期/时间模式;符合 ISO 8601ITPUB个人空间9aTJ8g4F7o'c!/ /
 
表示由当前 SortableDateTimePattern 属性定义的自定义 DateTime 格式字符串。此模式是定义的标准,并且属性是只读的。因此,无论所使用的区域性或所提供的格式提供程序是什么,它总是相同的。

 

自定义格式字符串为“yyyy'-'MM'-'dd'T'HH':'mm':'ss”
dK ~;h1[0 
#E­f­sVF*T{'K0t
&@E(lU
|w(o(C0
 
短时间模式
w3o[1]NjJ m0 
表示由当前 ShortTimePattern 属性定义的自定义 DateTime 格式字符串。

例如,用于固定区域性的自定义格式字符串为“HH:mm”ITPUB个人空间_ f hUe w6Fa
 
-k

d[1]n
w$N[0T
.~~,gU

H"T0 长时间模式
xh&L

u*@.K:g'W0 表示由当前 LongTimePattern 属性定义的自定义 DateTime 格式字符串。

 

 

 

例如,用于固定区域性的自定义格式字符串为“HH:mm:ss”ITPUB个人空间 {#W9m o @k
 
&V6Wsus re/[K0u
S4Ac­X/0Sw‑V0 
通用的可排序日期/时间模式
&j)t:Z,e:]M0 
表示由当前 UniversalSortableDateTimePattern 属性定义的自定义 DateTime 格式字符串。此模式是定义的标准,并且属性是只读的。因此,无论所使用的区域性或所提供的格式提供程序是什么,它总是相同的。

自定义格式字符串为“yyyy'-'MM'-'dd HH':'mm':'ss'Z'”

格式化日期和时间时不进行时区转换。因此,应用程序在使用此格式说明符之前必须将本地日期和时间转换为协调世界时 (UTC)
u#/,xmd q M0 ITPUB
个人空间 G2^o] /­S,a i
UITPUB
个人空间)^7?%]U_K5Bd
 
通用的可排序日期/时间模式ITPUB个人空间s0aBv!H Ues
 
表示由当前 FullDateTimePattern 属性定义的自定义 DateTime 格式字符串。

此模式与完整日期/长时间 (F) 模式相同。但是,格式化将作用于等效于正在格式化的 DateTime 对象的协调世界时 (UTC)ITPUB个人空间 EC.v-tt K

[+z
 ITPUB
个人空间­G,L:C(ox/ s`
Y
y
Q}.Ei4hf0 
年月模式

F2?'b5Z*/%U B"H0 表示由当前 YearMonthPattern 属性定义的自定义 DateTime 格式字符串。

 

 

例如,用于固定区域性的自定义格式字符串为“yyyy MMMM”
9e

R­Kf[1]p9x0 ITPUB个人空间*w
cHMi&z(a o

任何其他单个字符ITPUB个人空间 y rq)~5t n G/wA/
 
(未知说明符)
‑X
UPq3Bt]:j0
 
未知说明符将引发运行时格式异常。
^G1D/kc7u,s0 

 

ITPUB个人空间0a}2UH;d R
自定义 DateTime 格式字符串

格式说明符  说明 
$X(~ q J2?|0dITPUB
个人空间y.a"E|OK$~[1]l
 
将月中日期表示为从 1 31 的数字。一位数字的日期设置为不带前导零的格式。有关使用单个格式说明符的更多信息,请参见使用单个自定义格式说明符。
T0Z[1]F,d Z
e4b yh0
 
[1]E#` T&T,f/fS0dd

mV7Z!_,K+u:m$gx0F0 将月中日期表示为从 01 31 的数字。一位数字的日期设置为带前导零的格式。
/@ i%@%~&L,p(zU0 ITPUB
个人空间T;_BM[1]k
ddd

{

L[1]R,]4T9Kn3K%zVI‑]0 将一周中某天的缩写名称表示为当前 System.Globalization.DateTimeFormatInfo.AbbreviatedDayNames 属性中定义的名称。
0N/| a&V p[1]O;M-p,k o0 ITPUB
个人空间G‑EE _/J-|1Q
dddd
(另加任意数量的“d”说明符)
+H

S
Q,|];kg0 将一周中某天的全名表示为当前 System.Globalization.DateTimeFormatInfo.DayNames 属性中定义的名称。ITPUB个人空间
Y
O'b9u2Lk

 
({2M&m |oUT0f
0G tJ1]^/y0 
表示秒部分的最高有效位。

 

 

 

请注意,如果“f”格式说明符单独使用,没有其他格式说明符,则该说明符被看作是“f”标准 DateTime 格式说明符(完整日期/时间模式)。有关使用单个格式说明符的更多信息,请参见使用单个自定义格式说明符。

将此格式说明符与 ParseExact TryParseExact 方法一起使用时,所用“f”格式说明符的数目指示要分析的秒部分的最高有效位位数。ITPUB个人空间 ^:KbQUh[1]J e
 

N0zG%m |K1q0ff
Q2z)zu)l*Y$n Nh7`0 表示秒部分的两个最高有效位。
H5G~

UM Y^9Q

_9w-_0 
;@


p9C%|2ay0fff
a2K_U4q)b/G8?0  表示秒部分的三个最高有效位。 ITPUB 个人空间 ^&yW dM[1]N
 ITPUB
个人空间 3QIy­W[1]Ju0|
ffffITPUB
个人空间 /1?2q4Mti9j
 
表示秒部分的四个最高有效位。
j
uaPu_$SK0
 ITPUB
个人空间 M!b f.O-TJ*p
fffff
cr7U,b}jy0 
表示秒部分的五个最高有效位。
kI.pBQq5MlU~{0 ITPUB
个人空间 ‑jrJ
l/+Y

ffffff
-z$t!eN­J0 
表示秒部分的六个最高有效位。 ITPUB 个人空间 +g2_$h Kp
 ITPUB
个人空间 R3T
J J7x
x­Z­W&N

fffffffITPUB
个人空间 /DE[1]^t9j8d0{
 
表示秒部分的七个最高有效位。 ITPUB 个人空间 M n/J$nf7P1O‑{"L
 ITPUB
个人空间 J xM.W3V'Pdd5VF;s7v
FITPUB
个人空间 %Q u [p
^
m‑l

 
表示秒部分的最高有效位。如果该位为零,则不显示任何信息。有关使用单个格式说明符的更多信息,请参见使用单个自定义格式说明符。

 

 

 

将此格式说明符与 ParseExact TryParseExact 方法一起使用时,所用“F”格式说明符的数目指示要分析的秒部分的最高有效位最大位数。
-~Z;I'FO­c0 ITPUB
个人空间­Cs8L
e[1]jhzIZ,U6B

FF
ul%BDA?0S /­y0 
表示秒部分的两个最高有效位。但不显示尾随零(或两个零位)。ITPUB个人空间p#Nq~;u
 
rt5f@x+K8kK7}h0FFFITPUB
个人空间!`1Svl7}*D
 
表示秒部分的三个最高有效位。但不显示尾随零(或三个零位)。ITPUB个人空间i//E~8Quy(nQ
 
VpuV,tM]7k8Z0FFFFITPUB
个人空间

`$?XxH#Q0v5P
 
表示秒部分的四个最高有效位。但不显示尾随零(或四个零位)。ITPUB个人空间­Jy u+NH
 ITPUB
个人空间t8F^-L+O[1]Fs
FFFFFITPUB
个人空间

P8a_ a/ tnuA
 
表示秒部分的五个最高有效位。但不显示尾随零(或五个零位)。

Z7?h(u)cK-e mB0
 
0_ z G6`:l0FFFFFF
M0K^ dME$X
S%J0
 
表示秒部分的六个最高有效位。但不显示尾随零(或六个零位)。
*z&@U7F}0 
5G Mo}2d8C$_0FFFFFFFITPUB
个人空间6I]%SQ|$/C.VB
 
表示秒部分的七个最高有效位。但不显示尾随零(或七个零位)。
ibi[0fZNh2suk M:l0 
w-J2z#`&u ra0g
gg(另加任意数量的“g”说明符)ITPUB个人空间*csl‑E+/

VG
 
表示时期或纪元(例如 A.D.)。如果要设置格式的日期不具有关联的时期或纪元字符串,则忽略该说明符。有关使用单个格式说明符的更多信息,请参见使用单个自定义格式说明符。ITPUB个人空间2{a(D


}H Q0m~)G*H
 ITPUB
个人空间 t‑F G
U^"r q

h
uj;s:D4i)E5JZ0 
将小时表示为从 1 12 的数字,即通过 12 小时制表示小时,自午夜或中午开始对整小时计数。因此,午夜后经过的某特定小时数与中午过后的相同小时数无法加以区分。小时数不进行舍入,一位数字的小时数设置为不带前导零的格式。例如,给定时间为 5:43 ,则此格式说明符显示 “5” 。有关使用单个格式说明符的更多信息,请参见使用单个自定义格式说明符。
5Elq%pD
Q0
 
z ]5X {;{Q[(B0hh, hh
(另加任意数量的 “h” 说明符)
(@:S7o]9^?[1]r6u]0 
将小时表示为从 01 12 的数字,即通过 12 小时制表示小时,自午夜或中午开始对整小时计数。因此,午夜后经过的某特定小时数与中午过后的相同小时数无法加以区分。小时数不进行舍入,一位数字的小时数设置为带前导零的格式。例如,给定时间为 5:43 ,则此格式说明符显示 “05” ITPUB 个人空间 p A3JB9Tj
 ITPUB
个人空间 "j+rU+P%f[
HITPUB
个人空间 x0t wSn}[1]o
 
将小时表示为从 0 23 的数字,即通过从零开始的 24 小时制表示小时,自午夜开始对小时计数。一位数字的小时数设置为不带前导零的格式。
xW5X8ge$N0 ITPUB
个人空间 _6Z#{1FN
C
R _/vJ

HH, HH
(另加任意数量的 “H” 说明符) ITPUB 个人空间 o9E4J1MQ HD3U
 
将小时表示为从 00 23 的数字,即通过从零开始的 24 小时制表示小时,自午夜开始对小时计数。一位数字的小时数设置为带前导零的格式。 ITPUB 个人空间 &FPV­NI/:S9y
 
­EL E#m
Z!sq'U&T]0
KITPUB
个人空间 6hPJ0[­Z:X
~6|

 
表示 DateTime.Kind 属性的不同值,即 “Local” “Utc” “Unspecified” 。此说明符以文本形式循环设置 Kind 值并保留时区。如果 Kind 值为 “Local” ,则此说明符等效于 “zzz” 说明符,用于显示本地时间偏移量,例如 “-07:00” 。对于 “Utc” 类型值,该说明符显示字符 “Z” 以表示 UTC 日期。对于 “Unspecified” 类型值,该说明符等效于 “” (无任何内容)。
,|l,t!~5{n
}0
 
[1]_0~} yd0m
a(QK!V.j!E­]!A0I0 
将分钟表示为从 0 59 的数字。分钟表示自前一小时后经过的整分钟数。一位数字的分钟数设置为不带前导零的格式。有关使用单个格式说明符的更多信息,请参见使用单个自定义格式说明符。
Q*f1e7PqML1QY0 ITPUB
个人空间 )fJ‑e0d
u Yj

mm, mm
(另加任意数量的 “m” 说明符)
J&Lxj
]!f AI0
 
将分钟表示为从 00 59 的数字。分钟表示自前一小时后经过的整分钟数。一位数字的分钟数设置为带前导零的格式。 ITPUB 个人空间 v.U-l~
pRu

 ITPUB
个人空间 0|5B}0L.Z-]/
MITPUB
个人空间 {;P5O./m(W
 
将月份表示为从 1 12 的数字。一位数字的月份设置为不带前导零的格式。有关使用单个格式说明符的更多信息,请参见使用单个自定义格式说明符。 ITPUB 个人空间 &n:|Y‑g/Mb
 ITPUB
个人空间 T­K
]4lv

MM
)p:K'i*b
` L kD
|0
 
将月份表示为从 01 12 的数字。一位数字的月份设置为带前导零的格式。
sT K7N"W3z{c0 
+OHW l{(OCF.G,v0MMMITPUB
个人空间 7w2k+Y-{5v
 
将月份的缩写名称表示为当前 System.Globalization.DateTimeFormatInfo.AbbreviatedMonthNames 属性中定义的名称。 ITPUB 个人空间 ekn2S;|by m,Hn%L5o
 
7JM O:H!j ^0MMMMITPUB
个人空间
jVU Gi-V

 
将月份的全名表示为当前 System.Globalization.DateTimeFormatInfo.MonthNames 属性中定义的名称。 ITPUB 个人空间 1ld2[!a/5s yF
 
$k6h.RP}
Q/lY0
s
P+?Xw*}$b4|x9qH$S0 
将秒表示为从 0 59 的数字。秒表示自前一分钟后经过的整秒数。一位数字的秒数设置为不带前导零的格式。有关使用单个格式说明符的更多信息,请参见使用单个自定义格式说明符。
~:]P Z!l5@U0 ITPUB
个人空间 "_0A8K[1]M/?9Hf#o
ss, ss
(另加任意数量的 “s” 说明符)
$W[1]aN:{(O3n!G8i
e)O0
 
将秒表示为从 00 59 的数字。秒表示自前一分钟后经过的整秒数。一位数字的秒数设置为带前导零的格式。
FW O x
]0
 ITPUB
个人空间 bg4a#/)Z4b
j G'@ u/{

tITPUB
个人空间 [
w
s2}
C![

 
表示当前 System.Globalization.DateTimeFormatInfo.AMDesignator System.Globalization.DateTimeFormatInfo.PMDesignator 属性中定义的 A.M./P.M. 指示符的第一个字符。如果正在格式化的时间中的小时数小于 12 ,则使用 A.M. 指示符;否则使用 P.M. 指示符。有关使用单个格式说明符的更多信息,请参见使用单个自定义格式说明符。
;G:{&q6ak6x$r^e5a1K"m0 ITPUB
个人空间 7c"J
fdY;@

tt, tt
(另加任意数量的 “t” 说明符) ITPUB 个人空间 2y;XS])@
o

 
A.M./P.M. 指示符表示为当前 System.Globalization.DateTimeFormatInfo.AMDesignator System.Globalization.DateTimeFormatInfo.PMDesignator 属性中定义的内容。如果正在格式化的时间中的小时数小于 12 ,则使用 A.M. 指示符;否则使用 P.M. 指示符。
0R
u$HE9p
J4Q:T-D0
 ITPUB
个人空间 SJ‑V5u3Q]S
yITPUB
个人空间 "j.Kp{z9y
 
将年份表示为最多两位数字。如果年份多于两位数,则结果中仅显示两位低位数。如果年份少于两位数,则该数字设置为不带前导零的格式。有关使用单个格式说明符的更多信息,请参见使用单个自定义格式说明符。
&`2B+bk$s ?0 
@u|f2P4w,c:B0yyITPUB
个人空间 u­Nr)ZBDYOw t5x
 
将年份表示为两位数字。如果年份多于两位数,则结果中仅显示两位低位数。如果年份少于两位数,则用前导零填充该数字使之达到两位数。
WE[Y!b E0 ITPUB
个人空间 [1]v8/G;j
k
X(s4e2y&s

yyyITPUB
个人空间 }8XN4~(se
 
将年份表示为三位数字。如果年份多于三位数,则结果中仅显示三位低位数。如果年份少于三位数,则用前导零填充该数字使之达到三位数。

 

 

 

请注意,对于年份可以为五位数的泰国佛历,此格式说明符将显示全部五位数。
a?~)W)`P-[.A|0 
K;BU9|6K"F1/!X p0yyyyITPUB
个人空间B!z.}dD g!L-p
 
将年份表示为四位数字。如果年份多于四位数,则结果中仅显示四位低位数。如果年份少于四位数,则用前导零填充该数字使之达到四位数。

请注意,对于年份可以为五位数的泰国佛历,此格式说明符将呈现全部五位数。ITPUB个人空间,Usd‑^8Z9g {2? s
 ITPUB
个人空间.a.T E‑?/vE
yyyyy
(另加任意数量的“y”说明符)
YF$FAh%}ytvm0 
将年份表示为五位数字。如果年份多于五位数,则结果中仅显示五位低位数。如果年份少于五位数,则用前导零填充该数字使之达到五位数。

如果存在额外的“y”说明符,则用所需个数的前导零填充该数字使之达到“y”说明符的数目。ITPUB个人空间0r]HY:Y
E

 
$W;K U%U
x6g3O;[0
zITPUB
个人空间-oU}$B4~ W
 
表示系统时间距格林威治时间 (GMT) 以小时为单位测量的带符号时区偏移量。例如,位于太平洋标准时区中的计算机的偏移量为“-8”

偏移量始终显示为带有前导符号。加号 (+) 指示小时数早于 GMT,减号 (-) 指示小时数迟于 GMT。偏移量范围为 –12 +13。一位数字的偏移量设置为不带前导零的格式。偏移量受夏时制影响。有关使用单个格式说明符的更多信息,请参见使用单个自定义格式说明符。
3vA[[r&@c0 ITPUB
个人空间I*{!j5G%JzL
zzITPUB
个人空间
y9P0v7s(c7K

 
表示系统时间距格林威治时间 (GMT) 以小时为单位测量的带符号时区偏移量。例如,位于太平洋标准时区中的计算机的偏移量为“-08”

偏移量始终显示为带有前导符号。加号 (+) 指示小时数早于 GMT,减号 (-) 指示小时数迟于 GMT。偏移量范围为 –12 +13。一位数字的偏移量设置为带前导零的格式。偏移量受夏时制影响。
N/ k8ov#P:gn0 ITPUB
个人空间R e"x2V*dt2K#e
zzz, zzz
(另加任意数量的“z”说明符)
TY.E(DK5y0 
表示系统时间距格林威治时间 (GMT) 以小时和分钟为单位测量的带符号时区偏移量。例如,位于太平洋标准时区中的计算机的偏移量为“-08:00”

偏移量始终显示为带有前导符号。加号 (+) 指示小时数早于 GMT,减号 (-) 指示小时数迟于 GMT。偏移量范围为 –12 +13。一位数字的偏移量设置为带前导零的格式。偏移量受夏时制影响。ITPUB个人空间;f+bd3~7/Q­K

i
 ITPUB
个人空间5a$/.WA_1i.J
:
!C3Z*]+d1fR Q0 
当前 System.Globalization.DateTimeFormatInfo.TimeSeparator 属性中定义的时间分隔符,用于区分小时、分钟和秒。
l8dCi[1]p j4V0 ITPUB
个人空间V.QI

g)aA/`
/
4D-Olvf
n­Q0
 
当前 System.Globalization.DateTimeFormatInfo.DateSeparator 属性中定义的日期分隔符,用于区分年、月和日。
(qW?7Yuii
i0
 
y$J|iN(Kt

~0"
r‑_{ bR0 带引号的字符串(引号)。显示两个引号 (") 之间的任意字符串的文本值。在每个引号前使用转义符 (/)ITPUB个人空间k(H5vN%/
 ITPUB
个人空间{HM"d[1]M E3hg
'ITPUB
个人空间
~9| e5P"X&U#i%}3I2x.b /

 
带引号的字符串(撇号)。显示两个撇号 (') 字符之间的任意字符串的文本值。
2ZU9ke
e'em"T0
 
2H G6n i/A0%c
2B u0q bm4I0 
当自定义 DateTime 格式字符串只包含自定义格式说明符“c”时,表示与该自定义格式说明符关联的结果。也就是说,若要单独使用自定义格式说明符“d”“f”“F”“h”“m”“s”“t”“y”“z”“H”“M”,请指定“%d”“%f”“%F”“%h”“%m”“%s”“%t”“%y”“%z”“%H”“%M”。有关使用单个格式说明符的更多信息,请参见使用单个自定义格式说明符。
+Ys.b+/)f A[1]d0 


J#r2P
Q4?$ds^;?!}0/c ITPUB 个人空间 0V-m%xG.RN Z ?
 
转义符。当字符 “c” 前带有转义符 (/) 时,将该字符显示为文本。若要将反斜杠字符本身插入结果字符串,请使用两个转义符( “//” )。 ITPUB 个人空间 $~l.`#z.e(xN
 ITPUB
个人空间 +/*jM,H.|,D J
任何其他字符
4l?3C~D S
U0
 
所有其他字符被复制到结果字符串中,而且不影响格式化。 ITPUB 个人空间 TSW s f5h
 

 

 

 

ITPUB个人空间 E x,b|e@4CdP
枚举格式字符串

格式字符串  结果 
&S~ J4R-m!D0G
g
!VfNR*F.N5G+E0 
如有可能,将枚举项显示为字符串值,否则显示当前实例的整数值。如果枚举定义中设置了 Flags 属性,则串联每个有效项的字符串值并将各值用逗号分开。如果未设置 Flags 属性,则将无效值显示为数字项。ITPUB个人空间i.i[1]u#L$Z[1]md
 
`)pa3q[1]}0F
f

LyS DL3I_C9z0
 
如有可能,将枚举项显示为字符串值。如果值可以完全显示为枚举项的总和(即使未提供 Flags 属性),则串联每个有效项的字符串值并将各值用逗号分开。如果值不能完全由枚举项确定,则将值格式化为整数值。ITPUB个人空间 [D3A Z h8m#w
 
5D*}­a/C!f3@b

B(D)U0D d
&X­{­l4K"c/S4g*h0 
以尽可能短的表示形式将枚举项显示为整数值。
!~?‑t N4Ki-d!]+^7N Ee0 ITPUB
个人空间

fQp,{D,|_ u
X
x
(_­s)F ]%l-qf1e-o0 
将枚举项显示为十六进制值。按需要将值表示为带有前导零,以确保值的长度最少有八位。
9V!kf,{"H!S0 

 

 

 

ITPUB个人空间
]"@(i
su1LHQk4g,S0bb

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/avon520/archive/2009/06/23/4291791.aspx

 

 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 






























评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值