【发布时间】:2011-10-02 13:13:22
【问题描述】:
好吧,我正在尝试从 rss 中获取日期,并且我在 logcat 中得到了这个执行:
E/AndroidNews( 870): Caused by: java.text.ParseException: Unparseable date: "Su
n, 02 Oct 2011 14:00:00 +0100"
E/AndroidNews( 870): at java.text.DateFormat.parse(DateFormat.java:626)
E/AndroidNews( 870): at com.warriorpoint.androidxmlsimple.Message.setDate(Mes
sage.java:57)
我的格式化程序是
静态 SimpleDateFormat FORMATTER = new SimpleDateFormat("yyyy-MM-dd HH:mm");'
我的方法 setDate();
public void setDate(String date) {
this.date=null;
// pad the date if necessary
while (!date.endsWith("00")){
date += "0";
}
try {
this.date = FORMATTER.parse(date.trim());
} catch (ParseException e) {
throw new RuntimeException(e);
}
}
【问题讨论】:
-
很明显,输入的不是预期的日期格式。所以,ParseException 是正常的,不是吗?
-
有点离题,但永远不要将 SimpleDateFormat 放入静态变量中。您最终会在多个线程中使用相同的 SimpleDateFormat 实例并产生错误的日期和时间,因为它不是线程安全的。