大家在使用Date对象输出日期字符串表示的时候,大多会遇见一些不算困难的困难。说他不算困难是因为,大家不是不会做,只是一般繁琐的转化工作使人很烦恼,而大多数人不太原意考虑。有些人可能对这方面有所了解,但可能也不够充分,所以我在这里把我所知道的写出来,一来供大家参考,二来也算是抛砖引玉,希望能有更多的人讨论这个话题。 在JAVA中有一个很有用的类:SimpleDateFormat,它使用模板方法以文本形式格式化输出日期对象。一般的用法如下: SimpleDateFormat f=new SimpleDateFormat("MMM dd,yyyy"); f.format(new Date());
构造SimpleDateFormat使用的字符串就是模扳。这个模扳的表示即
为"February 21th, 2004"的式样。 其他模扳符号定义为: 符号 意义 显示形式
举例 G 公元 文本
AD y 年份 数字
2001 M 月 文本或数字
July或07 d 日 数字
10 h A.M./P.M.制的钟点(1~12) 数字
12 H 24小时制的钟点(0~23) 数字
0 m 分钟 数字
30 s 秒 数字
43 S 毫妙 数字
234 E 星期几 文本
Tuesday D 一年中的第几天 数字
360 F 某月中的第几个星期几 数字
2 w 一年中的第几个星期 数字
40 W 一个月中的第几个星期 数字
1 a A.M./P.M.标记 文本
PM k 24小时制的钟点(1~24) 数字
24 K A.M./P.M.制的钟点(0~11) 数字
0 z 时区 文本
Eastern ' 转义符 分隔符
'' 单引号 符号
'
这些符号是可以随意组合的,其中,显示形式为"文本"的符号,使用4个或以上的重复组合将输出长文本字符串,反之输出短字符串。
如:E产生Mon,而EEEE则产生Monday。对于显示形式为"文本和数字"的符号,两次以下包括两次的复用产生数字,而两次以上则产生文本。
另外,字符串模板不单可以在构造函数中使用,更可以在程序中动态的指定、变换。

|