Maison > Java > le corps du texte

LocalDate.parse et ResolverStyle.STRICT, pour l'Asie/Hong Kong, renvoient des résultats inattendus

王林
Libérer: 2024-02-13 20:54:07
avant
1175 Les gens l'ont consulté

L'éditeur php Xiaoxin présentera les problèmes liés à LocalDate.parse et ResolverStyle.STRICT en Java dans cet article. Lorsque vous utilisez ces méthodes en Asie ou à Hong Kong, vous risquez d’obtenir des résultats inattendus. Nous explorerons ce problème et proposerons des solutions.

Contenu de la question

Mon entrée est le 19.12.0009, la valeur attendue est le 19 décembre 00:00:00 hkt 9, mais le résultat renvoyé est le 21 décembre 00:23:18 hkt 9, pourquoi ? Le code est le suivant :

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);
Copier après la connexion

Solution

Dans zonerules il y a un concept de conversion avec savingslocaltransitions。我发现由于某种原因(可能是历史原因), "asia/hong_kong" 本地转换中的节省从 1904-10-30t00:36:42 开始。 resolverstyle.strict dedans ce qui n'est pas le problème ici !

C'est pour ça que tu vois 00:23:18 hkt 9.

Si vous modifiez le code, par exemple :

localdate localdate = localdate.parse("19.12.1904", formatter);
Copier après la connexion

Résultat attendu :

resultDate Mon Dec 19 01:00:00 JST 1904
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:stackoverflow.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!