2014-01-08 58 views
4

我有这个字符串的Android无法解析字符串到日期

Wed, 08 Jan 2014 9:30 am WET 

,需要进行解析到一个Date对象,我试过很多口罩,但没有工作,这里是我试过的最后一件事我认为这将有工作,但没有

SimpleDateFormat dateFormat = new SimpleDateFormat("EEE, dd MMM yyyy hh:mm aaa z", Locale.ENGLISH); 

感谢

堆栈跟踪

01-08 14:25:25.906: W/System.err(13288): java.text.ParseException: Unparseable date: "Wed, 08 Jan 2014 11:59 am WET" 
01-08 14:25:25.914: W/System.err(13288): at java.text.DateFormat.parse(DateFormat.java:626) 

最后我用这个代替

SimpleDateFormat dateFormat  = new SimpleDateFormat("EEE, dd MMM yyyy hh:mm aaa", Locale.ENGLISH); 
Date date = dateFormat.parse(dateString.substring(0, dateString.length() - 4)); 

WET部分是原因所以我删除它,它不会给出确切的时间,但我只需要一天,一个月,

+0

这就是我在Oracle网站上发现的 –

+0

什么是最后的WET? –

+0

不知道,我认为这是该区域,我从雅虎网站得到这个 –

回答

4

Locale给你的格式化程序,那里的日期和月份都是英文的,否则它将使用你的默认语言环境(我认为这不是英文),因此不能分析你的字符串。

SimpleDateFormat dateFormat = 
     new SimpleDateFormat("EEE, dd MMM yyyy hh:mm aaa z", Locale.ENGLISH); 
+0

莫名其妙它没有工作 –

+0

请发布堆栈跟踪,因为它为我工作。 –

+0

我更新了我的问题,谢谢! –