我使用以下代码比较日期
String sCreatedDate = "30.07.201514:57:03";
String sModifiedDate = "30.07.201515:40:34";
SimpleDateFormat parser = new SimpleDateFormat("dd.MM.yyyyHH:MM:SS");
Date d1 = parser.parse(sCreatedDate);
Date d2 = parser.parse(sModifiedDate);
System.out.println(d1.before(d2));
打印false
,但我希望打印true
。
你能否解释一下我在这段代码中做错了什么?
但是,上面的代码适用于以下日期并打印真实值:
String sCreatedDate = "23.07.201507:25:35";
String sModifiedDate = "23.07.201507:26:07";
答案 0 :(得分:9)
在格式结束时,您使用了MM
(月)代替mm
(分钟)。
String sCreatedDate = "30.07.201514:57:03";
String sModifiedDate = "30.07.201515:40:34";
SimpleDateFormat parser = new SimpleDateFormat("dd.MM.yyyyHH:mm:ss");//mm small
Date d1 = parser.parse(sCreatedDate);
Date d2 = parser.parse(sModifiedDate);
System.out.println(d1.before(d2));//true