Dav*_*les 8 java calendar date simpledateformat
我试图解析字符串"2/20/2012 12:00:00 AM"使用SimpleDateFormat,并且它似乎不是来了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, 0, 0)
.getTimeInMillis());
System.out.println(fromFmt);
System.out.println(fromCal);
Run Code Online (Sandbox Code Playgroud)
输出:
Mon Feb 20 12:00:00 PST 2012
Mon Feb 20 00:00:00 PST 2012
Run Code Online (Sandbox Code Playgroud)
我希望他们两个都输出后者.我的格式字符串有问题吗?
(并且请没有人说'使用JodaTime'.)
Dan*_*lan 18
请改用:
new SimpleDateFormat("MM/dd/yyyy hh:mm:ss aa")
Run Code Online (Sandbox Code Playgroud)
请注意我正在使用hh而不是HH.前者这样做:
上午/下午(1-12)
HH 做这个:
一天中的小时(0-23)
你告诉SimpleDateFormat你,你将在0-23范围内的一小时内通过,但你实际上并没有这样做.这就是你遇到这个问题的原因.
| 归档时间: |
|
| 查看次数: |
6783 次 |
| 最近记录: |