详细介绍JAVA中日期 yyyy-MM-dd HH:mm:ss

    xiaoxiao2025-08-15  1

    文章目录

    问题描述灾难现场还原原因分析说明各字段的含义何为”前导0”参考

    问题描述

    使用new SimpleDateFormat(“yyyy-MM-DD HH:mm:ss”).parse(“2019-05-27 22:47:31”);构造出来的时间与预期的不符。

    灾难现场还原

    Date startDate = new SimpleDateFormat("yyyy-MM-DD HH:mm:ss").parse("2019-05-27 22:47:31");

    打印出来的结果却是2019-01-27 22:47:31

    原因

    yyyy-MM-DD应该改为yyyy-MM-dd。

    分析说明各字段的含义

    字段说明yyyy或YYYY年。注意这个大小写是不同的!!!y 是Year, Y 表示的是Week year。 经过试验,得出的结果如下:Week year 意思是当天所在的周属于的年份,一周从周日开始,周六结束,只要本周跨年,那么这周就算入下一年。MM月。M大写是为了区分“月”与“分”dd日。必须小写,大写有时会出现本文上面出现的诡异bugHH或hh或H时。大小写不同!!!小写的h是12小时制,大写的H是24小时制。HH和H区别在于是否有前导0mm或者m分。mm与m的区别为是否有前导零ss或者s秒。ss和s的区别为是否有前导零

    何为”前导0”

    比如凌晨1点2分,HH:mm显示为01:02,H:m显示为1:2。

    参考

    https://blog.csdn.net/bai120552717/article/details/79375697 http://www.mamicode.com/info-detail-2055944.html

    最新回复(0)