2013-02-04 76 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