2011-04-29 19 views
7

我有兩個日期字符串說,「2011-04-29」和「2011-01-28」,我想比較他們使用喬達時間。有沒有辦法做到這一點 ?。一個例子將非常感激。使用約達時間庫比較日期字符串

謝謝

+0

你是什麼意思,「比較它們」? – skaffman 2011-04-29 11:38:28

+0

我的意思是確定哪個先到先 – Jim 2011-04-29 11:38:48

+2

該格式的日期已經與字符串相當,您不需要Jodatime。 – skaffman 2011-04-29 11:52:35

回答

0

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

7

首先你需要解析它們。使用DateTimeFormat

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

然後使用DateTime.isBefore(..)對它們進行比較:

if (dateTime1.isBefore(dateTime2)) 
2

如果您的日期字符串格式 「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 for compareTo()方法。

+0

你爲什麼要創建一個新的字符串? – Bozho 2011-04-29 13:57:53

+0

只是爲了研究案例 – 2011-04-29 14:06:54