Provided by:
manpages-fr-dev_2.80.1-1_all 
NOM
getdate, getdate_r - Conversion d’une chaîne de caractères en structure
tm.
SYNOPSIS
#define _XOPEN_SOURCE 500
#include <time.h>
struct tm *getdate(const char *string);
extern int getdate_err;
#define _GNU_SOURCE
#include <time.h>
int getdate_r(const char *string, struct tm *res);
DESCRIPTION
La fonction getdate() convertit une chaîne de caractères pointée par
string en une structure tm qu’elle renvoie. Cette structure tm est
susceptible d’être allouée de façon statique et d’être ainsi écrasée
lors du prochain appel.
Contrairement à strptime(3), (qui a un argument format), getdate()
utilise les formats présents dans le fichier dont le chemin d’accès
complet est donné par la variable d’environnement DATEMSK. La première
ligne du fichier qui peut être mise en correspondance avec la chaîne
passée en paramètre d’entrée est utilisée pour la conversion.
La correspondance n’est pas sensible à la casse. Les espaces superflus,
qu’ils soient dans le motif ou dans la chaîne à convertir, sont
ignorés.
Les paramètres de conversion qu’un motif peut contenir sont les mêmes
que pour strptime(3). Un indicateur de conversion supplémentaire est
accepté :
%Z Nom du fuseau horaire.
Lorsque %Z est spécifié, la valeur renvoyée est initialisée sous forme
humaine à l’heure courante du fuseau horaire indiqué. Sinon, elle est
initialisée sous forme humaine à l’heure locale actuelle.
Lorsque seul le jour de la semaine est donné, le jour pris en compte
sera le premier jour correspondant à partir d’aujourd’hui inclus.
Lorsque seul le mois est spécifié (et pas l’année), le mois pris en
compte est le premier mois correspondant à partir du mois courant
inclus. Si aucun jour n’est indiqué, le premier jour du mois est pris
par défaut.
Lorsque les heures, minutes et secondes ne sont pas indiquées, l’heure
courante (heures, minutes et secondes) est prise par défaut.
Si aucune date n’est indiquée, mais que l’on connaît l’heure, l’heure
prise en compte sera la première occurrence de cette heure, à partir de
l’heure courante incluse.
VALEUR RENVOYÉE
En cas de succès, cette fonction renvoie un pointeur vers une structure
struct tm. sinon elle renvoie NULL et positionne la variable globale
getdate_err. La modification éventuelle de errno est indéfinie.
getdate_err peut prendre les valeurs suivantes :
1 La variable d’environnement DATEMSK est null ou non définie.
2 Le fichier patron (template) ne peut être ouvert pour être lu.
3 Impossible de lire l’état du fichier.
4 Le fichier patron n’est pas un fichier régulier.
5 Une erreur est survenue en cours de lecture du fichier patron.
6 Échec d’allocation mémoire (pas assez de mémoire disponible).
7 Il n’y a pas de ligne dans le fichier qui puisse être mise en
correspondance avec l’entrée.
8 Paramètres d’entrée invalides.
ENVIRONNEMENT
DATEMSK
Fichier contenant les motifs de formatage.
TZ, LC_TIME
Variables utilisées par strptime(3).
CONFORMITÉ
POSIX.1-2001
NOTES
Puisque getdate() n’est pas ré-entrante à cause de l’utilisation de
getdate_err et du tampon statique utilisé pour stocker le résultat
renvoyé, la glibc fournit une variante utilisable en contexte
multi-threads. La fonctionnalité est la même. Le résultat est renvoyé
dans le tampon pointé par res et, en cas d’erreur, le code de retour
est différent de zéro avec les mêmes valeurs que celles données
précédemment pour getdate_err.
La spécification POSIX.1-2001 pour strptime(3) contient des
spécifications de conversion utilisant les modificateurs %E ou %O alors
que de tels modificateurs ne sont pas indiqués pour getdate().
L’implémentation glibc de getdate() utilise strptime(3) si bien que les
deux fonctions supportent exactement les mêmes conversions
automatiquement.
L’implémentation de la glibc ne supporte pas l’indicateur de
conversion : %Z.
VOIR AUSSI
time(2), localtime(3), setlocale(3), strftime(3), strptime(3),
feature_test_macros(7)
COLOPHON
Cette page fait partie de la publication 2.80 du projet man-pages
Linux. Une description du projet et des instructions pour signaler des
anomalies peuvent être trouvées à l’adresse
http://www.kernel.org/doc/man-pages/.
TRADUCTION
Cette page de manuel a été traduite par Stéphan Rafin <stephan DOT
rafin AT laposte DOT net> en 2002, puis a été mise à jour par Alain
Portal <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et mise à
disposition sur http://manpagesfr.free.fr/.
Les mises à jour et corrections de la version présente dans Debian sont
directement gérées par Florentin Duneau <fduneau@gmail.com> et l’équipe
francophone de traduction de Debian.
Veuillez signaler toute erreur de traduction en écrivant à
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document
en utilisant la commande « man -L C <section> <page_de_man> ».
26 juillet 2007 GETDATE(3)