首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java中如何解析follow date?

Java中如何解析follow date?
EN

Stack Overflow用户
提问于 2010-08-15 23:00:22
回答 4查看 1.3K关注 0票数 1

你好,我需要解析这个字符串

北京时间2010年8月15日下午3:50

我以这种方式使用SimpleDataFormat

代码语言:javascript
复制
String date = "Sun, 15 Aug 2010 3:50 pm CEST";
DateFormat formatter = new SimpleDateFormat("EEE, dd MMM yyyy h:mm a Z");
Date d = formatter.parse(date);

但是它抛出了一个异常。

你能帮帮我吗?

谢谢

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-08-15 23:28:41

SimpleDateFormat对当前设置的Locale敏感。因此,在尝试使用当前格式解析格式时,可能会出现问题。对于您的构造函数,它使用Locale.getDefault()来确定设置。

您可以尝试通过new SimpleDateFormat(pattern, Locale.US)使用Locale.US显式创建DateFormat,并验证在这种情况下是否也存在问题。

票数 4
EN

Stack Overflow用户

发布于 2010-08-15 23:12:13

这段代码:

代码语言:javascript
复制
try {
    String date = "Sun, 15 Aug 2010 3:50 pm CEST";
    DateFormat formatter = new SimpleDateFormat("EEE, dd MMM yyyy h:mm a Z");
    Date d = formatter.parse(date);
    System.out.println(formatter.format(d));
} catch (ParseException e) {
    e.printStackTrace();
}

打印(无任何例外):

代码语言:javascript
复制
Sun, 15 Aug 2010 3:50 PM +0200

所以我猜你还有别的问题..。你得到的异常是什么?

票数 1
EN

Stack Overflow用户

发布于 2010-08-16 21:56:26

我就是这样解决的

代码语言:javascript
复制
try {
DateFormat df = new SimpleDateFormat("EEE, dd MMM yyyy h:mm a", Locale.US);
Date d = df.parse(date);
bean.setDate(d);

} catch (Exception e) {Logger.error(“解析数据时出错”);}

从pattern中删除Z并使用Locale.US。

谢谢

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3487898

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档