【发布时间】:2011-07-15 09:41:30
【问题描述】:
我在从以下格式的输入字符串中解析日期时遇到问题:
String input = "Fri Jul 15 12:00:00 GMT+300 2011";
String dateFormat = "EEE MMM d HH:mm:ss z yyyy";
Date date = new SimpleDateFormat(dateFormat).parse(input);
抛出异常:
java.text.ParseException: Unparseable date: "Fri Jul 15 12:00:00 GMT+300 2011"
at java.text.DateFormat.parse(DateFormat.java:337)
我敢打赌它与 GMT 字符串有关。我想我已经用z、zzz、zZ 和zzzZ 进行了尝试。
有什么想法吗?输入 GMT+300 甚至是标准的有效输入格式吗?
【问题讨论】:
-
我阅读了the documentation,但无法解析。
-
通过阅读文档,似乎 GMT+300 无效,但 GMT+3:00 有效。有什么方法可以先操作输入字符串的时区部分,使其真正有效?
-
GMT+300 是无效格式,+0300 是
-
Joda Time 可以解决这个问题。
-
嗯,问题是字符串直接来自我们的 UI 框架的内置表单组件 DateItem (SmartGWT)。也许我会通知开发人员并等待它修复。
标签: java parsing datetime date simpledateformat