2

アプリがアメリカ/シカゴのタイムゾーンで日付を解析しようとして問題が発生しました。他の多くのParseExceptionの質問を確認しましたが、Javaでの日付解析に関する一般的な落とし穴をすべて取得したと思います。次のコードは、私が遭遇した他のすべての日付/時刻で機能しますが、アメリカ/シカゴのタイムゾーンのすべての日付は、何らかの理由で解析できません。

dateFormatのロケールを設定しましたが、それは問題ではありませんでした。他の各部分に問題がないことを確認し、非表示の制御文字を削除し、文字列を再入力して、不正な文字がコピー/貼り付けされていないことを確認しましたが、毎回例外がスローされます。

何かご意見は?

dateFormat = new SimpleDateFormat("EEE MMM dd k:mm:ss zzz ");
dateString = "Wed May 02 15:45:47 America/Chicago ";

try {
    entry.setDateTaken(dateFormat.parse(dateString));
}  catch (java.text.ParseException e) { }

城田ルートに行きたくない理由がありますが、これは簡単なことです。

4

1 に答える 1

7

問題は、 OlsonタイムゾーンIDを使用していることであり、それらの解析をサポートしていないと思います SimpleDateFormat確かにあなたのコードを使用すると、私は「ヨーロッパ/ロンドン」で同じ問題を抱えているので、それはシカゴに固有のものではありません。そのスタイルのタイムゾーン識別子で機能する例を挙げていただけます

于 2012-05-18T19:56:19.700 に答える