Vous êtes ici

dateformatter

Reformate et remplace une chaîne de caractères représentant une date ou une heure dans un nouveau format Date.

La chaîne source peut être dans presque n'importe quel format de type date/heure. (Notez, cependant, que DateFormatter ne supporte pas encore les dates antérieures à 1902.)

Quelques exemples :

  • 20091206 15:05
  • 20091206150500
  • Décembre 6, 2009
  • 06 Décembre 09, 15:05
  • 3:05pm

Paramètres

Attributs Date

Choisir les attributs à reformater et remplacer.

Format de date

La date source peut être sous n'importe quelle chaîne standard définissant une date ou une heure, incluant les codes de zone de temps.Si seule une heure est spécifiée, la date du jour est utilisée. Si la chaîne ne contient pas de code de zone de temps, la zone de temps locale est utilisée. La date source est constituée d'une ou plusieurs parties sous la forme :

dec Description
heure

Une heure sous la forme : hh[:mm[:ss]] [meridian] [zone] ou hhmm [meridian] [zone]. Si la valeur de [meridian] n'est pas spécifiée, hh est considéré par rapport à une référence de 24 heures. Note du traducteur : [meridian] correspond à la notation anglo-saxonne AM/PM

ATTENTION : un entier inférieur à 24 sera interprété comme une heure, la date étant considérée celle du jour. Ainsi, une valeur de "0" signifie "Aujourd'hui à 0 heure". Si l'attribut date contient des valeurs "0" n'ayant pas cette signification, celles-ci doivent être préalablement filtrées avant l'entrée dans DateFormatter.

Date

Un mois et un jour et, de manière facultative, une année. Les formats acceptables sont mm/jj[/aa];mois jj [, aa];jj mois [aa]; et jj, mois [aa].L'année par défaut est l'année en cours. Si l'année est inférieure à 100, les valeurs 00-68 correspondent à 2000-2068 et les années 69-99 à 1969-1999.

Note : Tous les systèmes d'exploitation ne gèrent pas les années 38-70, une erreur peut donc survenir si ces années sont utilisées

EVENEMENT TEMPOREL NORMALISÉ ISO 8601

La spécification d'un événement temporel au format ISO 8601 tel que CCaammjjThhmmss où T est le litéral T, CCaammjj hhmmss ou CCaammddThh:mm:ss.

TEMPS RELATIF

La spécification d'une date/heure relative à la date/heure actuelle.Le format est nombre unité.Les unités acceptables sont :year (année);fortnight (quinzaine);month (mois);week (semaine);day (jour)hour ;(heure);minute ou min (minute);second ou sec (seconde).

Les unités peuvent être écrites au singulier ou au pluriel, par exemple "3 weeks".Ces expressions peuvent également être utilisées:tomorrow (demain);

yesterday (hier);
today (aujourd'hui);

now (maintenant);
last (en complément avec une unité. last month = le mois précédent); this; next (en complément avec une unité. last month = le mois suivant); ago (en complément avec un nombre et une unité. 3 days ago = il y a 3 jours).

La date réelle est calculé en suivant les étapes suivantes :D'abord, chaque date/heure absolue est convertie.En utilisant cette date/heure comme référence, le jour de la semaine est ajouté. Ensuite, les autres spécifications sont utilisées.Si une date ou un jour est spécifié et qu'aucune heure absolue ou relative n'est fournie, l'heure est considérée comme 00 (minuit).Enfin, une correction est appliquée pour tenir compte des dates de changement d'heure et des calculs entre mois long et mois court. Ces corrections ne sont appliquées que pour les expressions de temps relatif et utilisant une unité journalière ou supérieure : jour, semaine, mois...

Format de date

Le FORMAT DE DATE détermine le format du nouvel attribut.Il peut inclure les caractère spéciaux suivants pour représenter les valeurs de date et d'heure provenant de l'attribut source :

"-"

Chaîne de caractère entre cotes (%Y"-"%m"-"%d)

%%

Insère un %

%a

Nom de jour abrégé (Lun, Mar...).

%A

Nom de jour complet (Lundi, Mardi...).

%b

Nom de mois abrégé (Jan, Fév...).

%B

Nom de mois complet.

%c

Date et heure locales.Le format date et heure "C" par défaut sur les systèmes locaux Unix/Mac : "%a %b %d %H:%M:%S %Y".Sous Windows cette valeur est la valeur locale du format complet de date et d'heure spécifiée dans les options régionales du panneau de configuration.

%C

Deux premiers caractères de l'année sur quatre caractères (19 ou 20).

%d

Jour du mois sur deux caractères (01 - 31).

%D

Date au format %m/%d/%y.

%e

Jour du mois sur un ou deux caractères (1 - 31).

%h

Nom de mois abrégé.

%H

Heure au format 24 heures sur deux caractères (00 - 23).

%I

Heure au format 12 heures sur deux caractères (01 - 12).

%j

Jour de l'année sur trois caractères (001 - 366).

%k

Heure au format 24 heures sur un ou deux caractères (0 - 23).

%l

Heure au format 12 heures sur un ou deux caractères (1 - 12).

%m

Numéro du mois sur deux caractères (01 - 12).

%M

Minute sur deux caractères (00 - 59).

%n

Insère une nouvelle ligne.

%p

Indicateur AM/PM.

%r

Heure dans le format "méridien" local. Le format "méridien" par défaut est "%I:%M:%S %p".

%R

Heure sous la forme %H:%M.

%s

Nombre de seconde depuis notre ère, exprimé en entier et dixième

%S

Secondes sur deux caractères (00 - 59).

%t

Insère une tabulation.

%T

Heure sous la forme %H:%M:%S.

%u

Numéro du jour dans la semaine (Lundi = 1, Dimanche = 7).

%U

Semaine dans l'année sur deux caractères (00 - 52), Dimanche est le premier jour de la semaine.

%V

Semaine de l'année conformément à la règle ISO-8601.La semaine 1 d'une année donnée est la semaine contenant le 4 janvier.

%w

Numéro du jour dans la semaine (Dimanche = 0, Samedi = 6).

%W

Semaine dans l'année sur deux caractères (00 - 52), Lundi est le premier jour de la semaine.

%x

Date locale.C'est le format date "C" par défaut sur les systèmes locaux Unix/Mac : "%m/%d/%y". Sous Windows cette valeur est la valeur locale du format abrégé de date spécifiée dans les options régionales du panneau de configuration.

%X

Format d'heure locale sur 24 heures.Le format d'heure sur 24 heures sur les système "C" par défaut pour Unix/Mac est "%H:%M:%S". Sous Windows, cette valeur est le format local d'heure spécifié dans les options régionales du panneau de configuration.

%y

Année sans les siècles sur deux caractères (00 - 99).

%Y

Année avec les siècles (1990)

%Z

Nom du fuseau horaire.

Notes

  • Dans une date de type numérique tel que 10/11/99, le premier nombre est toujours interprété comme un mois. La date est donc le 11 octobre et non pas le 10 novembre. Une date comme 13/1/05 produirait une erreur car 13 est un mois invalide.
  • Chaque date est traitée entité par entité, aucun format en commun n'est recherché.
  • Si une entité a un attribut nommé <sourceDateAttr>.full, issu d'un champs DATE de Oracle DATE, Cet attribut sera utilisé pour obtenir l'information jeure du jour.
  • Si un attribut source est composé de 14 chiffres son format sera interprété comme AAAAMMJJHHMMSS tel qu'il est formaté dans Oracle Reader. Pour mettre à jour une champ de type Date dans une base Oracle, il faut lui fournir une date sous la forme AAAAMMJJ en utilisant éventuellement DateFormatter ou Concatenator selon l'origine de la date.
  • Si l'attribut source est vide, alors le nouvel attribut retournera la date du jour.
  • Si la date source ou la chaîne de format n'est pas valide, le nouvel attribut retournera un vide.

Implémentation

Fonction(s) de bas niveau utilisée(s) (Function ou Factory): @Tcl2

Ajouter un commentaire