Les informations suivantes sont issues de la documentation sur les API Java 1.8 et plus précisément de la classe SimpleDateFormat.
Les formats de type date et heure sont spécifiés via des chaînes des motifs selon la syntaxe exposée ci-après.
Les lettres de "A" à "Z" et de "a" à "z" qui ne sont pas entourées de guillemets sont interprétées comme des symboles. Tout autre caractère n'est pas interprété et est donc généré tel quel dans le résultat du formatage.
- y : année (type année ; exemples : 1996; 96) - M : mois (type mois ; exemples : July; Jul; 07) - w : numéro de la semaine dans l'année (type nombre ; exemples : 27) - W : numéro de la semaine dans le mois (type nombre ; exemples : 2) - D : jour dans l'année (type nombre ; exemples : 189) - d : jour dans le mois (type nombre ; exemples : 10) - E : nom du jour de la semaine (type texte ; exemples : Tuesday; Tue) - u : numéro du jour de la semaine (type nombre ; exemples : 1) - a : am/pm marqueur (type texte ; exemples : PM) - H : heure dans la journée (0-23) (type nombre ; exemples : 0) - k : heure dans la journée (1-24) (type nombre ; exemples : 24) - K : heure en am/pm (0-11) (type nombre ; exemples : 0) - h : heure en am/pm (1-12) (type nombre ; exemples : 12) - m : minutes (type nombre ; exemples : 30) - s : secondes (type nombre ; exemples : 55) - S : millisecondes (type nombre ; exemples : 978)
Les lettres du motif peuvent être répétées dans ce dernier, car leur répétition est prise en compte dans le format produit : - Année : Interprétation de l'année :
- Si le nombre de lettres dans le motif est supérieur à 2, l'année est interprétée littéralement, indépendamment du nombre de chiffres. - Sinon (modèle d'année abrégé type "y" ou "yy") : l'année est déduite en raisonnant par rapport à la date courante. L'algorithme fait en sorte que l'année issue de l'interprétation soit comprise entre [anneeCourante - 80 ans, anneeCourante + 20 ans]. Par exemple, en utilisant un modèle de "MM/dd/yy" avec une date courante au le 1er janvier 1997, la chaîne "01/11/12" serait interprétée comme étant le 11 janvier 2012, tandis que la chaîne "05/04/64 "serait interprété comme le 4 mai 1964.
- Mois : si le nombre de lettres dans le motif est 3 ou plus, le mois est interprété en tant que texte ; dans les autres cas, il est interprété en tant que nombre.
Exemples (si la date utilisée est 2001-07-04 12:08:56) : Modèle : "yyyyMMdd" / Résultat : 20110704 Modèle : "EEE, MMM d, ''yy" / Résultat : Wed, Jul 4, '01 Modèle : "h:mm a" / Résultat : 12:08 PM Modèle : "YYYY-'W'ww-u" / Résultat : 2001-W27-3 |