Unparseable date Exception when passing String date
我正在检索HTTP响应标头的Last-Modified值并尝试将String日期值转换为Date对象:
1 2 3 4 5 | .. URLConnection urlConnection = url.openConnection(); Map<String, List<String>> headers = urlConnection.getHeaderFields(); Date date = new SimpleDateFormat("MMMM d, yyyy", Locale.ENGLISH).parse(headers.get(LAST_MODIFIED).get(0)); |
这是抛出异常:
java.text.ParseException: Unparseable date:"Thu, 27 Oct 2011 13:09:24
GMT" at java.text.DateFormat.parse(DateFormat.java:337)
有人能发现这个问题吗?! 谢谢。
编辑。
您需要为
E: Day in week
d: Day in month
M: Month in year
y: Year
H: Hour in day (0-23)
m: Minute in hour
s: Second in minute
z: Time Zone
1 2 3 | String dateString ="Thu, 27 Oct 2011 13:09:24 GMT"; SimpleDateFormat format = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz"); Date d = format.parse(dateString); |
看看这个重复的问题:如何解析HTTP Last-Modified标题中的日期?
Apache commons-httpclient提供的
只需使用
您不应该使用
您指定的日期格式与您要解析的字符串中的日期格式不匹配。
尝试:
1 | EEE, dd MMM, yyyy |