java 格式化当前日期有误

今天做个上传文件的功能,并且要记录当前的时间作为上传时间,但是发现用java new Date() 并且格式化之后的时间有问题,无法存入数据库,例如:

今天是2014年7月31日,时间是下午6点51分42秒,但输出的结果却是 2014-51-31 06:51:42,首先,月份肯定错了;其次,下午6点最好能显示成18点。



不知问题出在哪里,检查了一下格式化用的日期标识符:

DateUtils.asString(new Date(), "yyyy-mm-dd hh:mm:ss")
然后百度了一下,发现问题了:

    月份用的“mm”其实代表的分钟,而不是月份,月份要用“MM”,并且要用24小时制的话是“HH”,“hh”是12小时制。

   具体规则如下:

[plain]  view plain copy
  1. 时间日期标识符:  
  2. yyyy:年  
  3. MM:月  
  4. dd:日   
  5. hh:1~12小时制(1-12)  
[plain]  view plain copy
  1. HH:24小时制(0-23)  
  2. mm:分  
  3. ss:秒   
  4. S:毫秒   
  5. E:星期几  
  6. D:一年中的第几天  
  7. F:一月中的第几个星期(会把这个月总共过的天数除以7)  
  8. w:一年中的第几个星期  
  9. W:一月中的第几星期(会根据实际情况来算)  
  10. a:上下午标识  
  11. k:和HH差不多,表示一天24小时制(1-24)。  
  12. K:和hh<span style="font-family: Arial, Helvetica, sans-serif;">差不多</span><span style="font-family: Arial, Helvetica, sans-serif;">,表示一天12小时制(0-11)。</span>  
  13. z:表示时区  

总结:日期操作经常用到,可是一直没有很熟练地掌握,说明不够重视。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小鹰信息技术服务部

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值