如何在android中以“YYYY-MM-DD”格式获取Date对象

时间:2012-04-25 09:29:32

标签: android date datetime

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

为此我将Date String转换为Date对象。

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

请帮我怎么做......

5 个答案:

答案 0 :(得分:51)

 Date cDate = new Date();
 String fDate = new SimpleDateFormat("yyyy-MM-dd").format(cDate);

答案 1 :(得分: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

答案 2 :(得分:3)

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

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

Date currentDate = new Date();

答案 3 :(得分:3)

您可以使用两种方式:

  1. DateFormat对象。使用解析方法。

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

答案 4 :(得分:2)

您可以按照以下方式执行此操作

// 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);

//并比较

System.out.println("compare    "+ 
        arrayOfStringDate[d].toString().equals(check));