开发者

Parse date in android

开发者 https://www.devze.com 2023-03-27 13:32 出处:网络
I have the following code to pase a date DateFormat df = new SimpleDateFormat(\"EEE, dd MMM yyyy kk:mm:ss\", Locale.getDefault());

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

精彩评论

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