首先了解一下格式化日志的所有表示。
- 时间日期标识符:
- yyyy:年
- MM:月
- dd:日
- hh:1~12小时制(1-12)
- HH:24小时制(0-23)
- mm:分
- ss:秒
- S:毫秒
- E:星期几
- D:一年中的第几天
- F:一月中的第几个星期(会把这个月总共过的天数除以7)
- w:一年中的第几个星期
- W:一月中的第几星期(会根据实际情况来算)
- a:上下午标识
- k:和HH差不多,表示一天24小时制(1-24)。
- K:和hh<span >差不多</span><span >,表示一天12小时制(0-11)。</span>
- z:表示时区
要注意其中的大小写哦,不然会格式化后的日期会很乱的哦!!!
同时没个字母可以写多个,如:yyyyyyyyyyy。根据你的数大小,根据写的字母的长度,在前面补零。
比如:你要把2013 - 08 - 13 15:29:44这个时间格式化成2013 年 08 月 13 日 15 时 29 分 44 秒
一不小心把格式化日期中时间标识符中的大小写搞错了。
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时MM分ss秒");
- 写成这样了。最后得到的结果就不对了。
- 这个MM这里写的是月份的表示。而分钟的表示则是mm。所以要注意、
下面是把日期格式话成最全的例子。
- SimpleDateFormat sdf = new SimpleDateFormat("yyyyyyyy-MM-dd HH(hh):mm:ss S E D F w W a k K z");
- long times = System.currentTimeMillis();
- System.out.println(times);
- Date date = new Date(times);
- String tim = sdf.format(date);
- System.out.println(tim);
输出的结果:
- 00002013-08-14 15(03):56:40 742 星期三 226 2 33 3 下午 15 3 CST
- SimpleDateFormat sdf = new SimpleDateFormat("现在是yyyy年MM月dd日 HH(hh)时 mm分 ss秒 S毫秒 星期E 今年的第D天 这个月的第F星期 今年的第w个星期 这个月的第W个星期 今天的a k1~24制时间 K0-11小时制时间 z时区");
- long times = System.currentTimeMillis();
- System.out.println(times);
- Date date = new Date(times);
- String tim = sdf.format(date);
- System.out.println(tim);
输出结果:
- 现在是2013年08月14日 16(04)时 03分 03秒 812毫秒 星期星期三 今年的第226天 这个月的第2星期 今年的第33个星期 这个月的第3个星期 今天的下午 161~24制时间 40-11小时制时间 CST时区
标识符表格:
| Symbol | Meaning | Presentation | Example |
| G |
era designator |
Text |
AD |
| y |
year |
Number |
2009 |
| M |
month in year |
Text & Number |
July & 07 |
| d |
day in month |
Number |
10 |
| h |
hour in am/pm (1-12) |
Number |
12 |
| H |
hour in day (0-23) |
Number |
0 |
| m |
minute in hour |
Number |
30 |
| s |
second in minute |
Number |
55 |
| S |
millisecond |
Number |
978 |
| E |
day in week |
Text |
Tuesday |
| D |
day in year |
Number |
189 |
| F |
day of week in month |
Number |
2 (2nd Wed in July) |
| w |
week in year |
Number |
27 |
| W |
week in month |
Number |
2 |
| a |
am/pm marker |
Text |
PM |
| k |
hour in day (1-24) |
Number |
24 |
| K |
hour in am/pm (0-11) |
Number |
0 |
| z |
time zone |
Text |
Pacific Standard Time |
| ' |
escape for text |
Delimiter |
(none) |
| ' |
single quote |
Literal |
' |
文转:http://blog.csdn.net/yangbobo1992/article/details/9965105