记一则马虎引起的日期错误

Error

周末忙着做毕设,其中有从数据库中取出时间,然后进行了下格式化,结果发现格式化后的日期如上图,显然月份数据是不对的,怎么可能出来30月…

查阅代码,一开始竟也没有发现错误:

   1: public void setCreatetime(Date createtime) {

   2:     SimpleDateFormat df=new SimpleDateFormat("yyyy-mm-dd hh:mm:ss");

   3:     this.createtime = df.format(createtime).toString();

   4: }

看了以上代码,我想细心的同学已经发现了,月份的掩码应该是MM,而不是mm,哈哈 看来英雄难过MM关啊!(MM=网络用语,美眉)

 

附录:

常见的时间掩码

y 年 Year 1996; 96
M 年中的月份 Month July; Jul; 07
w 年中的周数 Number 27
W 月份中的周数 Number 2
D 年中的天数 Number 189
d 月份中的天数 Number 10
F 月份中的星期 Number 2
E 星期中的天数 Text Tuesday; Tue
a Am/pm 标记 Text PM
H 一天中的小时数(0-23) Number 0
k 一天中的小时数(1-24) Number 24
K am/pm 中的小时数(0-11) Number 0
h am/pm 中的小时数(1-12) Number 12
m 小时中的分钟数 Number 30
s 分钟中的秒数 Number 55
S 毫秒数 Number 978
z 时区 General time zone Pacific Standard Time; PST; GMT-08:00
Z 时区 RFC 822 time zone -0800