我在解析以下日期时收到异常:
SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy");
Date parsedDate=null;
try {
parsedDate=sdf.parse("Thu Jan 26 15:05:48 COT 2012");
} catch (ParseException e) {
e.printStackTrace();
}
模式不正确吗?解析日期字符串的正确形式是什么?+
答案 0 :(得分:4)
默认的SimpleDateFormat构造函数不支持所有语言环境。
您必须指定区域设置:
SimpleDateFormat sdf = new SimpleDateFormat(
"EEE MMM dd HH:mm:ss zzz yyyy", Locale.ENGLISH);
Date parsedDate = null;
try {
parsedDate = sdf.parse("Thu Jan 26 15:05:48 COT 2012");
System.out.println(parsedDate);
} catch (ParseException e) {
e.printStackTrace();
}
答案 1 :(得分:2)
尝试只使用一个z
:
SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy");
答案 2 :(得分:2)
你有没有试过一个'z'而不是三个'z'?
SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy");
应该成为
SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy");
答案 3 :(得分:0)