SimpleDateFormat.parse不工作,因为lolipop 5.0 android更新 [英] SimpleDateFormat.parse not working since lolipop 5.0 android update

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

问题描述

我刚刚在我的Android手机上安装了升级版本的Lolipop,这样就不再工作了:

I just installed the upgrade version Lolipop 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)

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

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

推荐答案

根据 CLDR 。可能是以前被认可的,因为 c> 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.

这篇关于SimpleDateFormat.parse不工作,因为lolipop 5.0 android更新的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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