Я получаю даты из канала статуса 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;
}