Android Date неверные результаты - PullRequest
1 голос
/ 30 сентября 2011

Я получаю даты из канала статуса Twitter.

Я пытаюсь узнать все последние обновления (за последние 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");
}

Теперь для следующих дат он возвращается как «Недавнее обновление» // Текущее системное время 9:52am sep 30 2011

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;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...