Maison  >  Article  >  Java  >  Pourquoi SimpleDateFormat attribue-t-il toutes les dates à janvier lors de l'analyse des dates Active Directory ?

Pourquoi SimpleDateFormat attribue-t-il toutes les dates à janvier lors de l'analyse des dates Active Directory ?

DDD
DDDoriginal
2024-10-24 07:50:02309parcourir

Why is SimpleDateFormat Assigning All Dates to January When Parsing Active Directory Dates?

SimpleDateFormat n'affiche pas correctement les mois

Lorsque vous travaillez avec des dates, il est crucial que les données soient converties avec précision. Cependant, lors de l'utilisation de SimpleDateFormat de Java pour analyser les dates extraites d'Active Directory (AD), un problème peut survenir lorsque toutes les dates sont incorrectement attribuées à janvier.

Le problème

Dans l'extrait de code fourni, SimpleDateFormat est initialisé avec la chaîne de modèle suivante :

SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/DD");

Cette chaîne de modèle spécifie le format attendu de la chaîne de date : année (aaaa), mois (MM) et jour ( DD). Cependant, la valeur parsedDate affiche systématiquement le mois de janvier, quel que soit le mois réel inclus dans la date AD.

La solution

Le problème réside dans l'utilisation de "MM" majuscule dans la chaîne de modèle. Dans SimpleDateFormat, "MM" majuscule représente le mois sous forme de nom complet, tandis que "MM" minuscule représente le mois sous forme de nombre à deux chiffres.

Pour corriger ce problème, la chaîne de modèle doit être modifiée pour utiliser des minuscules. "MM":

SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");

En utilisant "MM" minuscule, SimpleDateFormat analysera correctement le mois sous la forme d'un nombre à deux chiffres, éliminant ainsi le problème de janvier cohérent.

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