Android 2.3 最近在昨晚发布。所以很自然地我尝试了我的应用程序,发现有日期格式问题。我注意到 DateFormatter 产生不同的格式。因此,请在一个简单的 Java 程序中执行此操作:
((SimpleDateFormat)DateFormat.getDateTimeInstance(DateFormat.LONG,
DateFormat.LONG)).format(new Date());
输出是
美国东部时间 2010 年 12 月 7 日上午 11:49:40
在 android 模拟器中做同样的事情,你会得到
2010 年 12 月 7 日上午 11:42:50 GMT-05:00
注意不同的时区。有人遇到过这个问题吗?我可以使用另一种不依赖于 Java 实现的格式化程序吗?
编辑: 好的,所以这里有更多关于我认为这是坏的原因的详细信息:
使用此代码:
private final DateFormat format =
new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z");
我试图解析日期,但抛出以下错误:
12-07 12:55:49.556: ERROR/DateDeserializer(847): Error when parsing date
java.text.ParseException: Unparseable date: "Mon, 06 Dec 2010 17:13:35 EST"
at java.text.DateFormat.parse(DateFormat.java:626)
at com.currency.mobile.client.DateDeserializer
.deserialize(DateDeserializer.java:31)
at com.currency.mobile.client.DateDeserializer
.deserialize(DateDeserializer.java:19)
at org.codehaus.jackson.map.deser.SettableBeanProperty
.deserialize(SettableBeanProperty.java:149)