1

我看到一个字符串为 Wed Apr 27 00:00:00 GMT-700 1988 并将其转换为我所做的日期

Date dateOfBirth = new Date(bean.getUserProfileBean().getDateOfBirth());

这失败了,我不知道为什么。知道它是否特定于 GAE 吗?

4

4 回答 4

1

日期Wed Apr 27 00:00:00 GMT-700 1988不是 Java 可以立即解析的格式。具体来说,GMT-700我所知道的任何库都无法解析时区部分。

此格式不是任何标准时区格式:通用时区、RFC822 或 ISO8601

您将需要为此编写自己的解析器。

于 2013-09-17T07:49:22.807 回答
0

解析 -700 所需的格式是 Z,ZZ

于 2013-09-24T07:54:19.283 回答
0

Date 有空的构造函数或Date(long)

如果要从中获取日期String,则需要使用SimpleDateFormat

于 2013-09-17T06:11:45.590 回答
0

尝试:

stirng strDate = bean.getUserProfileBean().getDateOfBirth();
Date date = new SimpleDateFormat("EEE MMM d HH:mm:ss z yyyy",
  Locale.ENGLISH).parse(strDate );

看到这个答案

或者,您可以尝试使用 Joda-Time 的DateTimeFormatter,尽管您可能会遇到'z'常规时区名称的问题:

stirng strDate = bean.getUserProfileBean().getDateOfBirth();
DateTimeFormatter dtf = DateTimeFormat.forPattern("EEE MMM d HH:mm:ss z yyyy");
dtf.parseDateTime(strDate);
于 2013-09-17T06:16:22.047 回答