[Thu,2020年3月12日22:08:53 GMT
代码:
SimpleDateFormat format = new SimpleDateFormat("EEE, dd MM yyyy HH:mm:ss z", Locale.ENGLISH);
Date date = null;
try {
date = format.parse(header);
} catch (ParseException e) {
e.printStackTrace();
}
例外:不可分割的日期:“格林尼治标准时间2020年3月12日,星期四”为什么呢?我已经弄清楚了怎么了。需要社区帮助!
MM
是带有两位数字的月份,对于Mar
这样的月份名称,您需要MMM
:SimpleDateFormat format = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.ENGLISH);
或者,更好的是,迁移到新的java.time API并按照注释中的建议使用DateTimeFormatter.RFC_1123_DATE_TIME
。
ZonedDateTime date = ZonedDateTime.parse(header, DateTimeFormatter.RFC_1123_DATE_TIME);