SimpleDateFormat使用详解 .

2014-11-14 14:09:00
admin
原创 2192
摘要:SimpleDateFormat 允许以为日期-时间格式化选择任何用户指定的方式启动。 但是,希望用 DateFormat 中的 getTimeInstance、 getDateInstance 或 getDateTimeInstance 创建一个日期-时间格式化程序。 每个类方法返回一个以缺省格式化方式初始化的日期/时间格式化程序。 可以根据需要用 applyPattern 方法修改格式化方式。
SimpleDateFormat 是一个以国别敏感的方式格式化和分析数据的具体类。 它允许格式化 (date -> text)、语法分析 (text -> date)和标准化。 

SimpleDateFormat 允许以为日期-时间格式化选择任何用户指定的方式启动。 但是,希望用 DateFormat 中的 getTimeInstance、 getDateInstance 或 getDateTimeInstance 创建一个日期-时间格式化程序。 每个类方法返回一个以缺省格式化方式初始化的日期/时间格式化程序。 可以根据需要用 applyPattern 方法修改格式化方式。 

SimpleDateFormat函数语法:
G 年代标志符
y
M
d
h 时 在上午或下午 (1~12)
H 时 在一天中 (0~23)
m
s
S 毫秒
E 星期
D 一年中的第几天
F 一月中第几个星期几
w 一年中第几个星期
W 一月中第几个星期
a 上午 / 下午 标记符 
k 时 在一天中 (1~24)
K 时 在上午或下午 (0~11)
z 时区


Date now=new Date();

SimpleDateFormat myFmt=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
System.out.println(myFmt.format(now));
输出结果:2014年11月14日 14时10分11秒

SimpleDateFormat myFmt1=new SimpleDateFormat("yy/MM/dd HH:mm"); 
System.out.println(myFmt1.format(now));
输出结果:14/11/14 14:10

SimpleDateFormat myFmt2=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//等价于now.toLocaleString()
System.out.println(myFmt2.format(now));
输出结果:2014-11-14 14:10:11

SimpleDateFormat myFmt3=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E ");
System.out.println(myFmt3.format(now));
输出结果:2014年11月14日 14时10分11秒 星期五 

SimpleDateFormat myFmt4=new SimpleDateFormat("一年中的第D天 一年中第w个星期 一月中第W个星期 在一天中k时z时区");
System.out.println(myFmt4.format(now));
输出结果:一年中的第318天 一年中第46个星期 一月中第3个星期 在一天中14时CST时区

System.out.println(now.toGMTString());
输出结果:14 Nov 2014 06:10:11 GMT

System.out.println(now.toLocaleString());
输出结果:2014-11-14 14:10:11

System.out.println(now.toString());
输出结果:Fri Nov 14 14:10:11 CST 2014