我有一个问题,我希望得到当天的开始,但它似乎是通过自动设置为12:00。
SimpleDateFormat dfFull = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String todayDate = dfFull.parse("2014-06-06 00:00:00");
today = dfFull.format(todayDate);
System.out.println(today);
为什么会吐出来:
2014-06-06 12:00:00
12:00:00
是问题
答案 0 :(得分:11)
这是因为hh
表示12小时格式的小时。您需要改为使用HH
。
SimpleDateFormat dfFull = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
有关详细信息,请查看docs。
另外,在旁注中,代码中存在拼写错误。
SimpleDateFormat dfFull = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date todayDate = dfFull.parse("2014-06-06 00:00:00"); // todayDate must be of type Date and not String
String today = dfFull.format(todayDate); // today should be of type String
System.out.println(today);
答案 1 :(得分:1)
在这种情况下,你应该使用HH
几个小时。
SimpleDateFormat dfFull = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String todayDate = dfFull.parse("2014-06-06 00:00:00");
today = dfFull.format(todayDate);
System.out.println(today);
现在你将获得输出
2014-06-06 00:00:00
如果您使用hh
表示您使用12小时格式而HH
表示24小时格式
所以