SimpleDateFormat发生不可解析的日期异常

End*_*ame 2 java android date milliseconds simpledateformat

我正在尝试从日期获取毫秒,但出现异常

java.text.ParseException:无法解析的日期:“ 2019年7月25日星期四10:56:29 GMT + 02:00”

到目前为止,这就是我所做的:

我从日期选择器中使用“ EEE MMM dd HH:mm:ss zzz yyyy”模式获取日期,然后传递给一种方法来获取毫秒数:

long milliDate = parseIso8601(dateTimeCalendar.getTime().toString());

private static long parseIso8601(String value) {
    try {
        return new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.US).parse(value).getTime();
    } catch (ParseException ignored) {
        return 0;
    }
}
Run Code Online (Sandbox Code Playgroud)

我得到了异常,它返回0。我不知道怎么了。谢谢

ale*_*y28 5

区域中的问题zzz需要时区的名称,例如EST,GMT或其他。

适用于您的情况的正确模式:

EEE MMM dd HH:mm:ss 'GMT'XXX yyyy
Run Code Online (Sandbox Code Playgroud)