2013-02-04 129 views
2

我有一個2D字符串數組爪哇字符串轉換爲日期,然後比較

static String[][] TaskStorage = { 
{"Task 1","02/07/13"}, 
{"Task 2","02/08/13"}, 
{"Task 3","02/09/13"}, 
{"Task 4","02/10/13"}, 
{"Task 5","02/11/13"}, 
{"Task 6","02/03/13"}, 
{"Task 7","02/04/13"}, 
{"Task 8","02/05/13"}, 
{"Task 9","02/06/13"}, 
{"Task 10","03/01/13"}, 
{"Task 11","03/02/13"}, 
{"Task 12","03/03/13"}, 
}; 

我想打印所有TaskStorage [0] [I],其中TaskStorage [I] [1]是02/07和02/08。 考慮到todayDate是02/04。今天的日期可以更改爲02/28。 todayDate將基於代碼的執行時間。
基本上是兩天前的打印任務。

這是我已經試過:

SimpleDateFormat dateFormat = new SimpleDateFormat("mm/dd/yy"); 
TaskDate = dateFormat.parse(LinkStorage[i][1]); 
if (todayDate.after(TaskDate)) { 
    System.out.println(""); 
} 
+0

到目前爲止您嘗試了什麼? – Dan

+1

好吧,很高興知道,編碼:)祝你好運 –

+0

@丹以下是我所嘗試過的。 SimpleDateFormat dateFormat = new SimpleDateFormat(「mm/dd/yy」); \t TaskDate = dateFormat.parse(LinkStorage [i] [1]); \t 如果(todayDate.after(TaskDate))\t {的System.out.println( 「」)} \t \t 遺憾的是沒有得到期望的輸出 – user2041390

回答

2

一種方法是使用SimpleDateFormat到字符串解析到Date對象,然後做通過Date API的比較。

編輯變革質疑:

下面是我都試過了。

SimpleDateFormat dateFormat = new SimpleDateFormat("mm/dd/yy"); 
TaskDate = dateFormat.parse(LinkStorage[i][1]); 
if (todayDate.after(TaskDate)) { 
    System.out.println("") 
} 

遺憾的是沒有得到期望的輸出

問題是與你的格式字符串,你所要求的分鐘,而不是。將"mm/dd/yy"更改爲"MM/dd/yy",你應該有更好的運氣。

+0

謝謝你。像魅力一樣工作。 – user2041390