当我解析 2014-10-06 12:00:00 时,我很惊讶为什么日历 HOUR_OF_DAY
在下面的示例中打印 0。
我明白如果 HOUR 打印 0,但 HOUR_OF_DAY 不应该打印 12?
String dateString = "2014-10-06 12:00:00";
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
try
{
cal.setTime(sdf.parse(dateString));
}catch(Exception e)
{}
System.out.print(cal.get(Calendar.HOUR_OF_DAY)); // Print 0 ???????
最佳答案
你必须在你的模式中使用大写的 H
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
因为:
h is Hour in am/pm (1-12)
H Hour in day (0-23)
有关详细信息,请参阅 the documentation of SimpleDateFormat
关于java - 解析 12 :00 时日历 HOUR_OF_DAY 返回 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26211691/