自棒棒糖5.0 Android更新以来,SimpleDateFormat.parse不起作用 [英] SimpleDateFormat.parse not working since lollipop 5.0 Android update

查看:136
本文介绍了自棒棒糖5.0 Android更新以来,SimpleDateFormat.parse不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我刚刚在Android手机上安装了升级版Lollipop,但此操作不再起作用:

I just installed the upgrade version Lollipop on my android phone and this doesn't work anymore:

String time = "Apr 07 10:35:27 CEST 2015";
long l1 = new SimpleDateFormat("MMM dd HH:mm:ss zzz yyyy").parse(time).getTime();

long l2 = new SimpleDateFormat("MMM dd HH:mm:ss zzz yyyy",
                Locale.ENGLISH).parse(time).getTime();

两者都不起作用:

W/System.err(11473): java.text.ParseException: Unparseable date: "avr. 07 10:35:27 CEST 2015" (at offset 17)

问题是,在我安装5.0之后,SimpleDateFormat现在返回GMT + 02:00而不是以前的CEST

The problem is that SimpleDateFormat now returns GMT+02:00 instead of previously CEST after I installed 5.0

推荐答案

根据 CLDR (Android使用)。可能是因为它是先前被识别的,因为 SimpleDateFormat 是从遵循Java自己的时间格式标准的Apache Harmony中取消的。

"CEST" is not a recognized timezone pattern according to CLDR, which Android uses. It may be that it was recognized in prior because SimpleDateFormat was lifted from Apache Harmony, which followed Java's own time format standard.

这篇关于自棒棒糖5.0 Android更新以来,SimpleDateFormat.parse不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆