Maison  >  Article  >  Java  >  Pourquoi Java SimpleDateFormat interprète-t-il systématiquement le mois comme janvier avec les dates AD ?

Pourquoi Java SimpleDateFormat interprète-t-il systématiquement le mois comme janvier avec les dates AD ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-24 07:58:02510parcourir

Why is Java SimpleDateFormat Consistently Interpreting the Month as January with AD Dates?

Java SimpleDateFormat se trompe systématiquement de mois en janvier

Lorsque les développeurs travaillent avec des valeurs de date provenant de diverses sources, ils peuvent rencontrer des cas où la classe Java SimpleDateFormat interprète incorrectement la partie mois de la date. Ce problème peut se manifester lors de la transformation de dates Active Directory (AD) en dates Java.

L'extrait de code fourni utilise SimpleDateFormat pour analyser les valeurs de date AD en objets Java Date :

<code class="java">SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/DD");</code>

Cependant, le modèle de format de date fourni (« aaaa/MM/JJ ») suppose un « M » majuscule pour la désignation du mois. Cela entre en conflit avec le « M » minuscule utilisé dans les valeurs de date AD, ce qui entraîne une interprétation incorrecte du mois comme janvier pour chaque date analysée.

Résoudre le problème

Pour résoudre cette divergence, le code doit utiliser le modèle de format correct pour les dates AD, qui utilise un « m » minuscule pour la désignation du mois. De plus, le séparateur de date doit être conforme aux normes AD. Par conséquent, le modèle de format révisé devrait être :

<code class="java">SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");</code>

Avec cet ajustement, SimpleDateFormat analysera correctement les valeurs de date AD, résolvant le problème de confondre systématiquement le mois avec janvier et garantissant des transformations de date précises.

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!

Déclaration:
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