SimpleDateFormat 日付解析における 'Z' リテラルの処理
日付解析の領域では、'Z' リテラルは特別な意味を持ちます。 。これは、指定された時間が UTC を基準点として使用していることを示すマーカーとして機能します。ただし、SimpleDateFormat を使用してこのリテラルを含む日付を解析すると、一部の特定のパターンで問題が発生する可能性があります。
これまでに遭遇したように、SimpleDateFormat は、「yyyy-MM-dd'T'HH:mm」のようなパターンを使用してこの形式を解釈するのに苦労します。 :ss」とその亜種。 SimpleDateFormat で TimeZone を手動で設定することもできますが、これは必須の措置ではありません。
解決策は、'Z' リテラルを明示的に処理するパターンを採用することです。 Java 7 以降では、使用する適切なパターンは「yyyy-MM-dd'T'HH:mm:ssX」です。このパターンは、「Z」リテラルをタイムゾーン オフセットとして認識し、UTC 形式で日付を適切に解析します。
したがって、日付 "2010-04-05T17:16:00Z" を正常に解析するには、次を利用する必要があります。次のパターン:
<code class="java">SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssX");</code>
以上がSimpleDateFormat を使用して「Z」リテラルを含む日付を解析する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。