QDateLa classe QDate fournit des fonctions pour gérer des dates. Plus d'informations... #include <QDate> Voir la position dans l'arbre des classes. Note : toutes les fonctions dans cette classe sont réentrantes. Description détailléeLa classe QDate fournit des fonctions pour gérer des dates. Un objet QDate contient une date, cela veut dire une année, un mois, un jour et un numéro (1 - 31) du calendrier grégorien (voir utilisation du calendrier grégorien et julien pour les dates antérieures au 15 Octobre 1582). Il peut lire la date actuelle de l'horloge système. Il fournit des fonctions de comparaison et de manipulation de dates. Par exemple, il est possible d'ajouter et de soustraire des jours, des mois et des années à des dates. Un objet QDate est souvent construit en donnant l'année, le mois et le numéro du jour. Notez que QDate interprète les années à deux chiffres (exemple : année 0 ? 99). QDate peut aussi être construit avec la fonction statique CurrentDate(), qui crée un objet QDate contenant la date de l'horloge système. Une date explicite peut être définie aussi en utilisant setDate(). La fonction fromString() prend deux arguments, une chaîne de caractères et une chaîne représentant le format de la date qui est utilisé sur cette première, et au final elle retourne un objet QDate. Les fonctions year(), month(), day() donnent accès à l'année, au mois et au chiffre du jour. Ainsi que les fonctions dayOfWeek() (jours de la semaine) et dayOfYear() (jour de l'année) qui retournent le nombre approprié. La même information est accessible sous forme de texte avec les fonctions toString(), shortDayName(), shortMonthName(), et longMonthName(). QDate fournit un ensemble complet d'opérateurs permettant de comparer deux objets QDate, où plus petit signifie antérieur et plus grand signifie postérieur. Vous pouvez incrémenter (ou décrémenter) une date par un certain nombre de jours en utilisant addDays(). De même, vous pouvez utiliser addMonths() (pour les mois) et addYears() (pour les années). La fonction daysTo() retourne le nombre de jours entre deux dates. Les fonctions daysInMonth() et daysInYear() retournent le nombre de jours du mois ou de l'année. La fonction isLeapYear() indique si l'année passée en argument est une année bissextile ou non. Utilisation du calendrier grégorien et julienQDate utilise le calendrier grégorien dans tous les cas, en commençant à la date du 15 octobre 1582. Pour les dates allant jusqu'au 4 octobre 1582 inclus, le calendrier julien est utilisé. Ce qui signifie qu'il y a un écart de 10 jours à l'intérieur du calendrier entre le 4 et le 15 octobre 1582. Quand vous utilisez QDateTime pour les dates de cette époque, le jour après le 4 octobre 1582 est le 15 octobre 1582, et les dates entre les deux sont invalides. Le passage de date de Jules à Grégoire utilisé ici est la date à laquelle le calendrier grégorien est introduit pour la première fois, par le Pape Gregoire XIII. Ce changement n'est pas universellement accepté et certaines localités l'ont seulement exécuté à une date ultérieure (le cas échéant). QDateTime ne prend aucun de ces faits historiques en compte. Si une application doit soutenir une spécification locale du système de datation, il doit le faire de sa propre initiative, sans oublier de convertir les dates à l'aide du jour julien. L'année 0Il n'y a pas d'année 0. Les dates de cette année sont considérées comme invalides. L'année -1 est l'année 1 avant J.-C. ou 1 an avant l'ère actuelle. Le jour avant 0001-01-01 est le 31 décembre 1 ACN (avant l'ère actuelle). Fourchette des dates validesLa fourchette des dates valides est du 2 janvier 4713 ACN à l'année 11 millions CE. Le jour julien retourné par tojulienDay() est un nombre proche de 1 jusqu'à débordement, même à travers l'écart du calendrier de QDateTime. Elle est adaptée pour une utilisation dans des applications qui doivent convertir un QDateTime en une date d'un autre système de calendrier, exemple, l'hébreu, l'islamique ou le chinois. Voir aussi QTime, QDateTime, QDateEdit, QDateTimeEdit et QCalendarWidget. Types membresenum QDate::MonthNameTypeCette énumération décrit les types de représentation de la chaîne de caractères utilisée pour le nom du mois.
Cette énumération a été introduite ou modifiée à partir de Qt 4.5. Fonctions membresQDate::QDate ()Construit une date vide. Les dates vides sont invalides. Voir aussi isNull() et isValid(). QDate::QDate ( int y, int m, int d )Construit une date avec l'année y, le mois m et le jour d. Si la date spécifiée est invalide, la date ne sera pas modifiée et isValid() retournera false. Une date avant le 2 Janvier 4713 avant J.C est considérée comme invalide. Attention : Les années de 0 à 99 ans sont interprétées en tant que telles, ce qui veut dire qu'il est impossible de mettre 10 pour signifier l'année 2010. Voir aussi isValid(). QDate QDate::addDays ( int ndays ) constRetourne un objet QDate contenant ndays (nombre de jours) en plus de la date de cet objet (ou en moins si ndays est négatif). Voir aussi addMonths(), addYears() et daysTo(). QDate QDate::addMonths ( int nmonths ) constRetourne un objet QDate contenant nmonths (nombre de mois) en plus de la date de cet objet (ou en moins si nmonths est négative). Note : Si la dernière combinaison jour/mois n'existe pas dans le résultat mois/année, cette fonction retournera la dernière date valide. Attention : QDate possède une cavité temporelle autour des jours introduisant le calendrier Grégorien (les jours du 5 au 14 Octobre 1582 inclus, n'existe pas). Si le résultat du calcul tombe sur l'un de ces jours, QDate retournera soit le 4 Octobre, soit le 15 Octobre. Voir aussi addDays() et addYears(). QDate QDate::addYears ( int nyears ) constRetourne un objet QDate contenant nyears (nombre d'années) en plus de la date de cet objet (ou en moins si nyears est négative). Note : Si la dernière combinaison jour/mois n'existe pas dans l'année résultante (c'est-à-dire, si la date était le 29 février et que l'année n'est pas bissextile), cette fonction retournera la dernière date valide (le 28 Février). Voir aussi addDays() et addMonths(). QDate QDate::currentDate () [static]Retourne la date actuelle indiquée par l'horloge système. Voir aussi QTime::currentTime() et QDateTime::currentDateTime(). int QDate::day () constRetourne le jour du mois (1 à 31) de cette date. Voir aussi year(), month() et dayOfWeek(). int QDate::dayOfWeek () constRetourne le jour de la semaine (1 à 7) de cette date Voir aussi day(), dayOfYear() et Qt::dayOfWeek. int QDate::dayOfYear () constRetourne le jour de l'année (1 a 365 ou 366 cela dépend si l'année est bissextile) de cette date. Voir aussi day() et dayOfWeek(). int QDate::daysInMonth () constRetourne le nombre de jours que le mois contient (28 à 31) à cette date. Voir aussi day() et daysInYear(). int QDate::daysInYear () constRetourne le nombre de jours que l'année contient (365 ou 366) à cette date. Voir aussi day() et daysInMonth(). int QDate::daysTo ( const QDate & d ) constRetourne le nombre de jours entre sa date et la date d (Peut être négatif si d est antérieur à cette date) Exemple : QDate d1(1995, 5, 17); // 17 Mai 1995 QDate d2(1995, 5, 20); // 20 Mai 1995 d1.daysTo(d2); // retourne 3 d2.daysTo(d1); // retourne -3 Voir aussi addDays(). QDate QDate::fromjulianDay ( int jd ) [static]Convertit le jour jd du calendrier julien en un QDate. Voir aussi toJulianDay(). QDate QDate::fromString ( const QString & string, Qt::DateFormat format = Qt::TextDate ) [static]Retourne la QDate représentée par la chaîne de caractères string, utilisant le format donné, ou une date invalide si la chaîne de caractères ne peut être parsée. Note pour Qt::TextDate : Il est recommandé d'utiliser le nom abrégé des mois en Anglais (ex. : « Jan » , « Feb » ). Selon la configuration des paramètres locaux de l'utilisateur, il est aussi possible d'utiliser les noms locaux des mois (« français »). QDate QDate::fromString ( const QString & string, const QString & format ) [static]Retourne la QDate représentée par la chaîne de caractères string, utilisant le format donné, ou une date invalide si la chaîne de caractères ne peut être parsée. Ces expressions peuvent être utilisées pour le format :
Toutes les autres entrées sont traitées comme du texte. Toutes les chaînes de caractères qui sont entre des guillemets simples sont traitées comme du texte et non comme une expression. Par exemple : QDate date = QDate::fromString("1MM12car2003", "d'MM'MMcaryyyy"); // ''date'' est le 1 décembre 2003 Si le format n'est pas défini correctement, une QDate invalide est retournée. Dans certains cas, il est préférable d'éviter les expressions de format qui ne requièrent pas les zéros de début de chaine. C'est le cas des expressions de format d et M qui se baseront sur deux chiffres, même si ceux-ci sont en dehors de la plage d'acceptation, et qui ne laisseront plus assez de chiffres disponibles pour la suite de l'expression de format. Dans l'exemple ci-dessous, on aurait pu s'attendre à obtenir la date du 30 Janvier, mais le résultat est en réalité invalide car M va récupérer deux chiffres : QDate date = QDate::fromString("130", "Md"); // retourne une date invalide Pour tous les champs qui ne sont pas représentés dans le format, les valeurs par défaut suivantes seront utilisées :
Les exemples suivants illustrent les valeurs par défaut: QDate::fromString("1.30", "M.d"); // 30 Janvier 1900 QDate::fromString("20000110", "yyyyMMdd"); // 10 Janvier 2000 QDate::fromString("20000110", "yyyyMd"); // 10 janvier 2000 Voir aussi QDateTime::fromString(), [[qtime::fromString|QTime::fromString(), QDate::toString(), QDateTime::toString() et QTime::toString(). void QDate::getDate ( int * year, int * month, int * day )Extrait la date, l'année, le mois et le jour, et les assigne à *year, *month et *day. Les pointeurs peuvent être nuls. Cette fonction a été introduite à partir de Qt 4.5. Voir aussi year(), month(), day() et isValid(). bool QDate::isLeapYear ( int year ) [static]Retourne true si l'année spécifiée dans year est une année bissextile, sinon retourne false. bool QDate::isNull () constRetourne true si la date est nulle, sinon retourne false. Une date nulle est invalide. Note : Le comportement de cette fonction est équivalent à isValid(). Voir aussi isValid(). bool QDate::isValid () constRetourne true si la date est invalide, sinon retourne false. Voir aussi isNull(). bool QDate::isValid ( int year, int month, int day ) [static]Ceci est une fonction membre surchargée. Retourne true si la date spécifiée (year, month, et day) est valide, sinon retourne false. Exemple : QDate::isValid(2002, 5, 17); // ''true'' QDate::isValid(2002, 2, 30); // ''false'' (30 Février n'existe pas) QDate::isValid(2004, 2, 29); // ''true'' (2004 est une année bissextile) QDate::isValid(2000, 2, 29); // ''true'' (2000 est une année bissextile) QDate::isValid(2006, 2, 29); // ''false'' (2006 n'est pas une année bissextile) QDate::isValid(2100, 2, 29); // ''false'' (2100 n'est pas une année bissextile) QDate::isValid(1202, 6, 6); // ''true'' (bien que 1202 est pré-Grégorien) Voir aussi isNull() et setDate(). QString QDate::longDayName ( int weekday ) [static]Retourne la version longue du nom du jour de weekday (ex. : Lundi). Le nom retourné est de type normal et peut être utilisé pour le formatage de date. Voir aussi toString(), shortDayName(), shortMonthName() et longMonthName(). QString QDate::longDayName ( int weekday, MonthNameType type ) [static]Retourne le long nom de weekday pour la représentation spécifiée par le type. Les jours sont énumérés selon la convention suivante :
Les noms des jours sont basés sur ceux qui sont paramétrés dans le système local. Cette fonction a été introduite à partir de Qt 4.5. Voir aussi toString(), shortDayName(), shortMonthName() et longMonthName(). QString QDate::longMonthName ( int month ) [static]Retourne la version longue du nom du mois month (ex. : Janvier). Le nom retourné est de type normal et peut être utilisé pour le formatage de date. Voir aussi toString(), shortMonthName(), shortDayName() et longDayName(). QString QDate::longMonthName ( int month, MonthNameType type ) [static]Retourne le nom long de month pour la représentation spécifiée par type. Les mois sont énumérés selon la convention suivante :
Les noms des mois sont basés sur ceux qui sont paramètrés dans le systeme local. Cette fonction a été introduite à partir de Qt 4.5. Voir aussi toString(), shortMonthName(), shortDayName() et longDayName(). int QDate::month () constRetourne le numéro correspondant au mois de cette date, utilisant la convention suivante :
bool QDate::setDate ( int year, int month, int day )Fixe la date avec year, month et day. Retourne true si la date est valide, sinon false. Si la date spécifiée est invalide, l'objet QDate sera invalide. Toute date avant le 2 Janvier 4713 avant J.C sera considérée comme invalide. Cette fonction a été introduite à partir de Qt 4.2. Voir aussi isValid(). QString QDate::shortDayName ( int weekday ) [static]Retourne le nom abrégé du jour de weekday (ex. : Lun). Le nom retourné est de type normal et peut être utilisé pour le formatage de date. Voir aussi toString(), longDayName(), shortMonthName() et longMonthName(). QString QDate::shortDayName ( int weekday, MonthNameType type ) [static]Retourne le nom abrégé du jour weekday (ex. : Lun) pour la représentation spécifiée par type. Les jours sont énumérés selon la convention suivante :
Les noms des jours sont basés sur ceux qui sont paramétrés dans le système local. Cette fonction a été introduite à partir de Qt 4.5. Voir aussi toString(), longDayName(), longMonthName() et longDayName(). QString QDate::shortMonthName ( int month ) [static]Retourne le nom abrégé de month (ex. : Jan). Le nom retourné est de type normal et peut être utilisé pour le formatage de date. Voir aussi toString(), longMonthName(), shortDayName() et longDayName(). QString QDate::shortMonthName ( int month, MonthNameType type ) [static]Retourne le nom abrégé du mois month (ex. : Jan) pour la représentation spécifiée par type. Les mois sont énumérés selon la convention suivante :
Les noms des mois sont basés sur ceux qui sont paramètrés dans le systeme local. Cette fonction a été introduite à partir de Qt 4.5. Voir aussi toString(), longMonthName(), shortDayName() et longDayName(). int QDate::tojulianDay () constConvertit la date en un jour julien. Voir aussi fromjulianDay(). QString QDate::toString ( const QString & format ) constRetourne la date sous forme de chaîne de caractères. Le paramètre format détermine le format du résultat de la chaîne de caractères. Ces expressions peuvent être utilisées :
Toutes les autres caractères seront ignorés. Toutes les chaînes de caractères qui sont entre guillemets simples sont traitées comme texte et non comme expression. Deux guillemets simples consécutifs sont remplacés par un simple guillemet à la sortie. Exemple de formats de chaîne de caractères (en supposant que l'objet QDate est le 20 Juillet 1969) :
Si la date est invalide, une chaîne vide sera retournée. Attention : Le format Qt::ISODate est valide seulement pour les années comprises entre 0 et 9999 incluse. Cette restriction s'applique au format local actuel selon les paramètres locaux fixés. Voir aussi QDateTime::toString() et QTime::toString(). QString QDate::toString ( Qt::DateFormat format = Qt::TextDate ) constCeci est une fonction membre surchargée. Retourne la date sous forme de chaîne de caractères. Le paramètre format détermine le format de la chaîne. Si format est Qt::TextDate, la chaîne est formatée par défaut. QDate::shortDayName() et QDate::shortMonthName() sont utilisés pour générer la chaîne de caractères, dont les noms des jours et des mois utilisés sont ceux du système. Un exemple de ce formatage est « Sam. Mai 20 1995 ». Si format est Qt::ISODate, le format de chaîne correspond à la norme internationale ISO 8601, qui spécifie la représentation numérique de la date et de l'heure, prenant la forme YYY-MM-DD, où YYY est l'année, MM est le mois de l'année (entre 01 et 12) et DD est le jour du mois entre 01 et 31. Un exemple de ce formatage est « 1995-05-20 ». Si format est Qt::SystemLocaleShortDate ou Qt::SystemLocaleLongDate, le format de la chaîne de caractères dépendra de la configuration locale du système. Même principe pour l'appel de QLocale::system().toString(date, QLocale::ShortFormat) ou QLocale::system().toString(date, QLocale::LongFormat). Un exemple du formatage Qt::SystemLocaleLongDate est « Samedi 20 Mai 1995 ». Si format est Qt::DefaultLocaleShortDate ou Qt::DefaultLocaleLongDate, le format de la chaîne de caractères dépendra de l'application locale par défaut. Cette application locale peut être modifiée avec QLocale::setDefault(), ou le système local si aucune valeur locale par défaut n'a été fixée. Même principe pour l'appel de QLocale().toString(date, QLocale::ShortFormat) ou QLocale().toString(date, QLocale::LongFormat). Si la date est invalide, une chaîne de caractères vide sera retournée. Attention : Le format Qt::ISODate est valide seulement pour les années comprises entre 0 et 9999 inclus. Cette restriction s'applique au format local actuel selon les paramètres locaux fixés. Voir aussi shortDayName() et shortMonthName(). int QDate::weekNumber ( int * yearNumber = 0 ) constRetourne le numéro de la semaine (1 à 53), et enregistre l'année dans *yearNumber, à moins que yearNumber soit nul (par défaut). Retourne 0 si la date est invalide. Conformément à la norme internationale ISO 8601, la semaine 1 de l'année commence toujours par un lundi, et le premier jeudi d'une année est toujours en semaine 1. La plupart des années sont de 52 semaines, mais certaines en ont 53. *yearNumber n'est pas toujours pareil que year(). Par exemple, le 1er Janvier 2000 aura la semaine 52 de l'année 1999, et le 31 Décembre 2002 aura la semaine 1 de l'année 2003. Copyright (c) 1989 The Regents of the University of California. All rights reserved. Voir aussi isValid(). int QDate::year () constRetourne l'année de cette date. Les nombres négatifs indiquent les années avant 1A.D. = 1 C.E. telle que l'année -44 est l'année 44 avant J.C bool QDate::operator!= ( const QDate & d ) constRetourne true si cette date est différente de d sinon retourne false. bool QDate::operator< ( const QDate & d ) constRetourne true si cette date est antérieure à celle de d sinon retourne false. bool QDate::operator<= ( const QDate & d ) constRetourne true si cette date est antérieure ou égale à celle de d sinon retourne false. bool QDate::operator== ( const QDate & d ) constRetourne true si cette date est égale à celle de d sinon retourne false. bool QDate::operator> ( const QDate & d ) constRetourne true si cette date est postérieure à celle de d sinon retourne false. bool QDate::operator>= ( const QDate & d ) constRetourne true si cette date est postérieure ou égale à celle de d sinon retourne false. En relation mais non membres de la classeQDataStream & operator<< ( QDataStream & out, const QDate & date )Écrit la date dans le flux out. Voir aussi sérialisation des type de données Qt. QDataStream & operator>> ( QDataStream & in, QDate & date )Lit une date depuis le flux in et le met dans date. Voir aussi sérialisation des type de données Qt. RemerciementsMerci à Mikael Sans pour la traduction ainsi qu'à Jonathan Courtois, Thibaut Cuvelier et à Philippe Beaucart pour leur relecture ! |
Publicité
Best OfActualités les plus luesSemaine
Mois
Année
Le Qt Developer Network au hasardCompiler l'add-in Qt de Visual StudioLe Qt Developer Network est un réseau de développeurs Qt anglophone, où ils peuvent partager leur expérience sur le framework. Lire l'article.
CommunautéRessources
Liens utilesContact
Qt dans le magazine |
Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. | Qt 4.7 | |
Copyright © 2012 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD. | ||
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP ! |
Copyright © 2000-2012 - www.developpez.com