SimpleDateFormat と 'Z' タイムゾーン指定子を使用した日付解析
SimpleDateFormat は、Java で日付を解析するための多用途ツールです。ただし、UTC 時間を表す「Z」リテラルを使用して日付を解析すると、問題が発生する可能性があります。
解析失敗
「2010-」のような日付文字列を解析する場合04-05T17:16:00Z" パターン "yyyy-MM-dd'T'HH:mm:ss" を使用すると、SimpleDateFormat はタイム ゾーン識別子 (EDT など) として 'Z' リテラルを使用し、現地時間を適用しますゾーン オフセットが発生し、日付が不正確になります。
代替パターン
UTC タイム ゾーンを明示的に指定するには、パターン「yyyy-MM-dd'T」を使用できます。 「HH:mm:ssz」または「yyyy-MM-dd'T'HH:mm:ssZ」。ただし、SimpleDateFormat はこれらのパターンをネイティブにサポートしません。
Java 7 のソリューション
Java 7 以降では、パターン「yyyy-MM-dd'T'HH」 :mm:ssX" を使用して、タイム ゾーン サフィックスを読み取り、適用できます。このパターンは、日付を UTC 時間として正しく解析します。
結論
タイム ゾーン指定子を扱う場合、SimpleDateFormat を使用した日付の解析は困難になる可能性があります。ただし、制限を理解し、適切なパターンを使用することで、開発者は、UTC 時間を表す「Z」リテラルを含む日付をさまざまな形式で正確に解析できます。
以上がSimpleDateFormat を使用して Java で「Z」タイムゾーン指定子を使用して日付を解析する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。