簡體   English   中英

使用 joda 時間庫比較日期字符串

[英]Comparing date strings using joda time library

我有兩個日期字符串,“2011-04-29”和“2011-01-28”,我想使用 Joda Time 比較它們。 有沒有辦法做到這一點?。 一個例子將不勝感激。

謝謝

首先,您需要解析它們。 使用DateTimeFormat時間格式:

DateTimeFormatter fmt = DateTimeFormat.forPattern("yyyy-MM-dd");
DateTime dateTime1 = fmt.parseDateTime(string1);

然后使用DateTime.isBefore(..)來比較它們:

if (dateTime1.isBefore(dateTime2))

也可以使用ltn4java的庫如下:

    DataCompare dc = new DataCompare();
    int Resultado;
    Resultado = dc.compareWithTwoDatesString("2011-04-29","2011-01-28","yyyy-MM-dd");

Library的下載頁面是http://code.google.com/p/ltn4java/downloads/list

如果您的日期字符串格式為“yyyy-MM-dd”,您可以應用簡單的字符串比較:

String s1 = new String("2012-01-27");
String s2 = new String("2011-01-28");
System.out.println(s1.compareTo(s2));

如果 s1 在字典上比 s2 “大”,那么結果將為 TRUE,這就是您所需要的。 要獲取更多信息,請閱讀 javadoc 以了解 compareTo() 方法。

除了@Bozho 的回答,我們還可以使用AbstractInterval.isAfter

if (dateTime2.isAfter(dateTime1))

將字符串轉換為日期對象並進行比較。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM