アジア/香港の場合、LocalDate.parse および ResolverStyle.STRICT が予期しない結果を返す
Feb 13, 2024 pm 08:54 PMphp エディタ Xiaoxin は、この記事で Java の LocalDate.parse と ResolverStyle.STRICT に関する問題を紹介します。アジアまたは香港でこれらの方法を使用すると、予期しない結果が生じる可能性があります。この問題を調査し、解決策を提供します。
質問の内容
私の入力は 19.12.0009 で、期待値は dec 19 00:00:00 hkt 9 ですが、返された結果は dec 21 00:23:18 hkt 9、なぜ? コードは以下のように表示されます:
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.uuuu") .withResolverStyle(ResolverStyle.STRICT); LocalDate localDate = LocalDate.parse("19.12.0009", formatter); Instant instant = Instant.from(localDate.atStartOfDay(ZoneId.of("Asia/Hong_Kong"))); Date resultDate = Date.from(instant); System.out.println("resultDate" + resultDate);
ログイン後にコピー
Solution
zonerules には遷移の概念があり、 Savinglocaltransitions
があります。何らかの理由 (おそらく歴史的理由) で、"asia/hong_kong"
ローカル変換での節約は 1904-10-30t00:36:42
から始まることがわかりました。 resolverstyle.strict
ここでは問題ではありません。
これが、00:23:18 hkt 9
と表示される理由です。
コードを変更する場合、たとえば:
リーリー期待される出力:
リーリー以上がアジア/香港の場合、LocalDate.parse および ResolverStyle.STRICT が予期しない結果を返すの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

人気の記事
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD

人気の記事
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック
Gmailメールのログイン入り口はどこですか?
7304
9


Java チュートリアル
1623
14


CakePHP チュートリアル
1344
46


Laravel チュートリアル
1259
25


PHP チュートリアル
1207
29

