java – SimpleDateFormat无法正确处理12个月
发布时间:2020-05-24 15:02:56 所属栏目:Java 来源:互联网
导读:我正在尝试使用SimpleDateFormat解析字符串“2/20/2012 12:00:00 AM”,它似乎将在下午12点出来.代替. Date fromFmt = new SimpleDateFormat(MM/dd/yyyy HH:mm:ss aa) .parse(2/20/2012 12:00:00 AM); // Calen
|
我正在尝试使用SimpleDateFormat解析字符串“2/20/2012 12:00:00 AM”,它似乎将在下午12点出来.代替. Date fromFmt = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss aa")
.parse("2/20/2012 12:00:00 AM");
// Calendar months are 0-indexed
Date fromCal = new Date(new GregorianCalendar(2012,1,20,0)
.getTimeInMillis());
System.out.println(fromFmt);
System.out.println(fromCal);
输出: Mon Feb 20 12:00:00 PST 2012 Mon Feb 20 00:00:00 PST 2012 我希望他们两个都输出后者.我的格式字符串有问题吗? (并且请没有人说’使用JodaTime’.) 解决方法请改用:new SimpleDateFormat("MM/dd/yyyy hh:mm:ss aa")
请注意,我正在使用hh而不是HH.前者这样做:
HH这样做:
你告诉SimpleDateFormat你将在0-23范围内的一小时内传递,但你实际上并没有这样做.这就是你遇到这个问题的原因. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
