【发布时间】:2014-07-17 20:01:12
【问题描述】:
我有以下字符串:dateToParse = "Fri May 16 23:59:59 BRT 2014",并希望使用 DateFormat 对其进行解析:
DateFormat dateFormat = new SimpleDateFormat(pattern, Locale.getDefault());
Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("America/Sao_Paulo"));
cal.setTime(dateFormat.parse(dateToParse));
现在我正在尝试使用pattern = "EEE MMM dd HH:mm:ss z yyyy",但得到了这个例外:
java.text.ParseException: Unparseable date: "Fri May 16 23:59:59 BRT 2014" (at offset 0)
我无法弄清楚这种模式有什么问题,特别是在索引 0 处……知道我错过了什么吗?谢谢。
[编辑] 所以问题的一部分是我使用的是 Locale.getDefault(),所以很可能试图用葡萄牙语的 dateFormat 解析一个英文日期......使用正确的语言环境,我仍然得到 ParseException,但这次是偏移量 20 ,这意味着解析时区时出了点问题(在我的例子中是'BRT')......
【问题讨论】:
-
您确定要解析的字符串中没有前导空格或其他字符。我使用与您相同的 DateFormat 编写了一个快速示例,并且没有问题
-
@Mena 我正在编辑问题,抱歉
标签: java date-format simpledateformat parseexception