如何比较日期 - 字符串自定义格式“DD.MM.YYYY,HH:MM:SS”另一个呢?(How to

2019-10-18 09:25发布

我要检查2日期String自定义格式S "dd.MM.yyyy, HH:mm:ss"反目成仇。 我怎样才能得到老吗?

例如 :

String date1 = "05.02.2013, 13:38:14";
String date2 = "05.02.2013, 09:38:14";

有没有办法让date2与比较?

Answer 1:

你已经拥有的日期格式,使用它SimpleDateFormat然后比较创建Date的对象。

观看演示在这里。 示例代码:

public static void main(String[] args)  Exception {
    String date1 = "05.02.2013, 13:38:14";
    String date2 = "05.02.2013, 09:38:14";
    System.out.println(getOlder(date1, date2)); // 05.02.2013, 13:38:14
    System.out.println(getOlder(date2, date1)); // 05.02.2013, 13:38:14
}

public static String getOlder(String one, String two) throws ParseException {
    Date dateOne = new SimpleDateFormat("dd.MM.yyyy, HH:mm:ss").parse(one);
    Date dateTwo = new SimpleDateFormat("dd.MM.yyyy, HH:mm:ss").parse(two);
    if (dateOne.compareTo(dateTwo) > -1) {
        return one; // or return dateOne;
    }
    return two; // or return dateTwo;
}

当然,上述方法将返回进入最早的日期字符串。 你可以改变它(见注释)返回Date对象来代替。



Answer 2:

我只是给你的,你应该如何进行简要说明。 您需要先分析这些日期字符串成Date对象。 使用DateFormat#parse(String)为该。 当您得到的Date对象了这些字符串的,你可以比较使用这些对象的Date#compareTo(Date)方法。



Answer 3:

日期和时间Calulations总是棘手,我强烈建议您使用appropiate类这一点,你可能要检查约达时间这一点。

他们的类提供的方法,如daysBetween是给你你想要的结果。

当然,你必须分析你的字符串给你表示此日期和时间,第一对象。



文章来源: How to compare a date - String in the custom format “dd.MM.yyyy, HH:mm:ss” with another one?
标签: java date format