21

我有一个要求,我需要比较两个日期。一个日期将来自数据库,它是“YYYY-DD-MM”公司中的字符串,我需要将此字符串日期与当前日期进行比较。

为此,我将日期字符串转换为日期对象。

现在我还需要“YYYY-MM-DD”格式的当前日期,它应该是日期对象,以便我可以使用.compareTo() 方法比较两个日期..

请帮助我如何做到这一点...

4

5 回答 5

63
 Date cDate = new Date();
 String fDate = new SimpleDateFormat("yyyy-MM-dd").format(cDate);
于 2012-04-25T09:41:19.323 回答
5
Calendar c = Calendar.getInstance();
SimpleDateFormat tf = new SimpleDateFormat("yyyy-MM-dd");
String time=DB time;
Date parseTime= tf.parse(time);
Integer dayNow=c.getTime().getDate();
Integer dayDb=parseTime.getDate();

然后你可以比较dayNowdayDb

于 2012-04-25T09:51:31.530 回答
5

You can do it in following way

// pick current system date

    Date dt = new Date();

// set format for date

   SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");

 // parse it like

        String check = dateFormat.format(dt);


        System.out.println("DATE TO FROM DATEBASE   " + 
                arrayOfStringDate[d].toString());
        System.out.println("CURRENT DATE   " + check);

// and compare like

System.out.println("compare    "+ 
        arrayOfStringDate[d].toString().equals(check));
于 2012-04-27T06:10:16.430 回答
4

如果您当前的日期实际上是java.util.Date该类的一个实例,则无需为其指定格式;它只是一个代表特定时刻的毫秒值。

您可以像这样获取当前日期:

Date currentDate = new Date();
于 2012-04-25T09:32:07.943 回答
3

您可以使用 2 种方式:

  1. 日期格式对象。使用解析方法。

  2. 制作您自己的日期解析器。我的意思是,您将年、月和日分别转换为一个整数,然后使用Date构造函数来获取 Date。

于 2012-04-25T09:37:47.587 回答