繁体   English   中英

在Joda-Time中使用月份名称解析日期

[英]Parse date with month name in Joda-Time

我必须在Joda Time中解析此确切的字符串:“ june 15 2015”,并将其与另一个具有相同格式的日期进行比较:“ september 15 2015”。 我怎样才能做到这一点? 我无法使用该日期语法。

这是乔达(Joda)的纯粹回答:

DateTimeFormatter dtf =
    DateTimeFormat.forPattern("MMMM dd yyyy").withLocale(Locale.ENGLISH);
LocalDate d1 = dtf.parseLocalDate("june 15 2015");
LocalDate d2 = dtf.parseLocalDate("september 15 2015");
System.out.println(d1.isBefore(d2)); // true

您必须将其转换为Timestamp ,使用类似的东西

 //date1 : your first date
 //date2 : your second date
 //sdf : date format 

        java.util.Date utilDate1 = new java.util.Date(date1);
        java.util.Date utilDate1 = new java.util.Date(date2);

        java.sql.Timestamp ts1 = new java.sql.Timestamp(utilDate1.getTime());  
        java.sql.Timestamp ts2 = new java.sql.Timestamp(utilDate2.getTime());  

        SimpleDateFormat sdf = new SimpleDateFormat("MM.dd.yyyy");

        if(sdf.format(ts1)>sdf.format(ts2))
            System.out.println("date1 > date2");
        else
          System.out.println("date1 < date2");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM