Android日期结果不正确

时间:2011-09-30 04:28:29

标签: android datetime

我从twitter状态Feed获取日期。

我想找出所有最新的更新(过去24小时)

long referenceTime =System.currentTimeMillis()-(24*60*60*1000);

//ti.getDateTime() returns the string time returned from twitter..
long statusTime =DateUtil.convertStringToDate(ti.getDateTime(), "EEE MMM dd HH:mm:ss ZZZZZ yyyy").getTime();

if(statusTime>referenceTime )
{
    Log.d(TAG,"Recent update");
}

现在,对于以下日期,它将返回“最近更新” //当前系统时间2011年9月30日上午9:52

Thu Sep 29 11:28:16 +0000 2011 // Correct
Thu Sep 29 11:33:07 +0000 2011 // Correct
Fri Mar 25 16:15:05 +0000 2011 // Incorrect
Tue Mar 22 19:32:38 +0000 2011 // Incorrect
Sat Jul 24 12:05:49 +0000 2010 // Incorrect
Wed Jul 14 23:56:27 +0000 2010 // Incorrect

[这些是ti.getDateTime()返回的字符串。 为什么会这样?

并且它几乎是随机的,因为以下日期不会打印日志。

Fri Jul 09 22:07:53 +0000 2010
Fri Jul 09 21:17:23 +0000 2010
Tue Apr 26 22:33:59 +0000 2011

DateUtil:

public static final Date convertStringToDate(String date, String entryFormat) {
    Date theDate = null;
    try {
        //SimpleDateFormat formatter  = new SimpleDateFormat( "MMMM d, yyyy");"yyyy-mm-dd"
        SimpleDateFormat formatter  = new SimpleDateFormat( entryFormat);
        theDate = formatter.parse(date);
    } catch (Exception e){          
    }
    return theDate;
}

0 个答案:

没有答案