Twitter日期无法解析?
我想将Twitter响应中的日期字符串转换为Date对象,但是我总是得到ParseException,并且看不到错误!
输入字符串:2010年12月23日星期四18:26:07 +0000
SimpleDateFormat
模式:
EEE MMM dd HH:mm:ss ZZZZZ yyyy
方法:
public static Date getTwitterDate(String date) {SimpleDateFormat sf = new SimpleDateFormat(TWITTER);
sf.setLenient(true);
Date twitterDate = null;
try {
twitterDate = sf.parse(date);
} catch (Exception e) {}
return twitterDate;
}
我也尝试过此方法:http :
//friendpaste.com/2IaKdlT3Zat4ANwdAhxAmZ,但结果相同。
我在Mac OS X上使用Java 1.6。
干杯,
和我
回答:
您的格式字符串对我有用,请参阅:
public static Date getTwitterDate(String date) throws ParseException { final String TWITTER="EEE MMM dd HH:mm:ss ZZZZZ yyyy";
SimpleDateFormat sf = new SimpleDateFormat(TWITTER);
sf.setLenient(true);
return sf.parse(date);
}
public static void main (String[] args) throws java.lang.Exception
{
System.out.println(getTwitterDate("Thu Dec 3 18:26:07 +0000 2010"));
}
输出:
2010年12月3日星期五,格林尼治标准时间18:26:07
罗兰·伊利格(Roland Illig)是对的:SimpleDateFormat与语言环境有关,因此只需使用显式的英语语言环境即可:
SimpleDateFormat sf = new SimpleDateFormat(TWITTER,Locale.ENGLISH);
以上是 Twitter日期无法解析? 的全部内容, 来源链接: utcz.com/qa/405166.html