我有以下代码来设定日期
DateFormat df = new SimpleDateFormat("EEE, dd MMM yyyy kk:mm:ss", Locale.getDefault());
Date _pubDate = df.parse(_pubDateE.getFirstChild().getNodeValue());
但是我收到了这个错误:
java.text.ParseException:Unparseable date:“Fri,2011年8月12日15:34:47 CEST”
有什么问题?
答案 0 :(得分:7)
在您的异常消息“CEST”部分中,您最后错过了日期格式中的时区。 你的代码
DateFormat df = new SimpleDateFormat("EEE, dd MMM yyyy kk:mm:ss", Locale.getDefault());
应该是
DateFormat df = new SimpleDateFormat("EEE, dd MMM yyyy kk:mm:ss z", Locale.getDefault());
您可能需要阅读SimpleDateFormat
编辑 在本页的底部,时区格式更加清晰 Clearer Timezone format
答案 1 :(得分:4)
我认为你需要在最后添加zzz
(对于时区):
"EEE, dd MMM yyyy kk:mm:ss zzz"
答案 2 :(得分:0)
日期字符串不是您指定的格式。注意结束时区?
答案 3 :(得分:0)
您可能想要:new SimpleDateFormat("EEE, dd MMM yyyy kk:mm:ss zzz", Locale.getDefault());