开发者

Parse date in android

I have the following code to pase a date

DateFormat df = new SimpleDateFormat("EEE, dd MMM yyyy kk:mm:ss", Locale.getDefault());
开发者_StackOverflow社区Date _pubDate =  df.parse(_pubDateE.getFirstChild().getNodeValue());

But I get this error:

java.text.ParseException: Unparseable date: "Fri, 12 Aug 2011 15:34:47 CEST"

What is wrong ?


You're missing the timezone in the date format at the end, in your exception message, the "CEST" part. Your code

DateFormat df = new SimpleDateFormat("EEE, dd MMM yyyy kk:mm:ss", Locale.getDefault());

should be

DateFormat df = new SimpleDateFormat("EEE, dd MMM yyyy kk:mm:ss z", Locale.getDefault());

You might want to read SimpleDateFormat

Edit At the bottom of this page, the timezone format is more cleary explained Clearer Timezone format


I think you need to add zzz in the end (for timezone):

"EEE, dd MMM yyyy kk:mm:ss zzz"


The date string is not in the format you specified. Notice the time zone at the end?


You probably want: new SimpleDateFormat("EEE, dd MMM yyyy kk:mm:ss zzz", Locale.getDefault());

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜