我看到一个字符串为Wed Apr 27 00:00:00 GMT-700 1988 并将它转换为我做的日期
Date dateOfBirth = new Date(bean.getUserProfileBean().getDateOfBirth());
这失败了,我不知道为什么。有没有想过它是否特定于GAE?
答案 0 :(得分:1)
日期Wed Apr 27 00:00:00 GMT-700 1988
不是Java可以解析的格式。具体来说,我所知道的任何库都无法解析时区GMT-700
部分。
此格式不是任何标准时区格式:general timezone, RFC822 or ISO8601。
您需要为此编写自己的解析器。
答案 1 :(得分:0)
日期有空构造函数或Date(long)
如果您想从String
获取日期,则需要使用SimpleDateFormat
答案 2 :(得分:0)
尝试:
stirng strDate = bean.getUserProfileBean().getDateOfBirth();
Date date = new SimpleDateFormat("EEE MMM d HH:mm:ss z yyyy",
Locale.ENGLISH).parse(strDate );
请参阅this answer
或者您可以尝试使用Joda-Time的DateTimeFormatter,尽管您可能会遇到'z'
时区名称的常见问题:
stirng strDate = bean.getUserProfileBean().getDateOfBirth();
DateTimeFormatter dtf = DateTimeFormat.forPattern("EEE MMM d HH:mm:ss z yyyy");
dtf.parseDateTime(strDate);
答案 3 :(得分:0)
解析-700所需格式为Z,ZZ