日期和时间的比较

时间:2013-12-05 09:13:14

标签: android string date time comparison

我必须得到过去当天的天数。我有arraylist的日期列表。我得到了清单,我不知道如何比较?有人可以帮助我吗?

这是我试过的代码,

private void weeklylogeval(){
    int i;
DateFormat dateFormatter = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
dateFormatter.setLenient(false);
Date today = new Date();
String s = dateFormatter.format(today);
System.out.println("current date & time new:::"+s);
for(i=0;i<datetime.size();i++){
String daytime=datetime.get(i);
if(today.before(daytime))
}
}

请帮助我一些人!

3 个答案:

答案 0 :(得分:0)

http://developer.android.com/reference/java/util/Calendar.html

这应该更容易用于您的目的 编辑:

您可以使用的方法:

布尔后(对象日历) 返回此Calendar实例表示的Date是否在参数表示的Date之后。 boolean before(对象日历) 返回此Calendar实例表示的Date是否在参数表示的Date之前。

答案 1 :(得分:0)

也许您可以构建一个Date格式,从DB获取String,然后使用today.before(daytime)来比较它们。

Date daytime = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").parse(datetime.get(i));

答案 2 :(得分:0)

尝试使用此代码进行日期差异操作。

String fd=from_date;//date get from mysql database as string.
String td=to_date;//Today's date as string.
if(!fd.equalsIgnoreCase("") && !td.equalsIgnoreCase("")){
       SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
           SimpleDateFormat formatter;
           Date frmdt=new Date(fd);
           formatter = new SimpleDateFormat("dd/MM/yyyy");
           String s1 = formatter.format(frmdt);
           Date todt=new Date(td);
           String s2 = formatter.format(todt);
           Date frmdate = sdf.parse(s1);
           Date todate = sdf.parse(s2);
                  if(frmdate.compareTo(todate)<=0) {
                                //do your stuff
                     } else {
                                // do your stuff
                     }
             }