Android2.3は昨夜リリースされました。だから当然、アプリを試してみたところ、日付の書式設定に問題があることがわかりました。DateFormatterがさまざまなフォーマットを生成することに気づきました。したがって、これを単純なJavaプログラムで実行します。
((SimpleDateFormat)DateFormat.getDateTimeInstance(DateFormat.LONG,
DateFormat.LONG)).format(new Date());
出力は
2010年12月7日午前11:49:40EST
Androidエミュレーターで同じことを行うと、
2010年12月7日11:42:50AMGMT-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)