Android SimpleDateFormat 无法解析日期时间(在 sun 1.6 jre 上工作正常)
任何想法为什么以下失败在 Android 2.2...
java.text.ParseException: Unparseable date: 2011-02-16 11:38:03.328 UTC
...而它在 sun JRE 1.6 上运行良好?
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S z");
try
{
Date date = dateFormat.parse("2011-02-16 11:38:03.328 UTC");
}
catch (ParseException e)
{
e.printStackTrace();
}
正如前面提到的 ion Comment,可以使测试变得更加简单:
new SimpleDateFormat("z").parse("UTC")
这会引发解析异常。我使用的是 Nexus One 设备,Android 2.2
Any ideas why the followng fails on Android 2.2...
java.text.ParseException: Unparseable date: 2011-02-16 11:38:03.328 UTC
...while it works fine on a sun JRE 1.6 ?
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S z");
try
{
Date date = dateFormat.parse("2011-02-16 11:38:03.328 UTC");
}
catch (ParseException e)
{
e.printStackTrace();
}
As mentioned ion Comment, can make the test even simpler:
new SimpleDateFormat("z").parse("UTC")
This throws a parse exception. I am using a nexus one device, android 2.2
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
用这个代替
Use this instead
我现在有一个解决方法:
这允许我至少解析 Android 2.2 中的日期。我的应用程序已修改为尝试“yyyy-MM-dd HH:mm:ss.S 'UTC'”,然后在第一次解析失败时尝试“yyyy-MM-dd HH:mm:ss.S z”
I have a workaround now:
This allows me to at least parse the date in Android 2.2. My application has been modified to try "yyyy-MM-dd HH:mm:ss.S 'UTC'" and then try "yyyy-MM-dd HH:mm:ss.S z" if the first parse fails
尝试像这样指定区域设置:
Try specifying the locale like this:
我复制了这段代码并遇到了强制转换异常...
尝试我的这段代码
I have copied this code and got casting exception...
try this code of mine