Bonsoir Orel
Delphi 4 propose les fonctions suivantes :
Date lit l'heure système.
Unité
SysUtils
Catégorie
routines de dates et d'heures
function Date: TDateTime;
Description
La fonction Date renvoie la date système.
-------------------------------------------------
DateToStr convertit une variable de type TDateTime en chaîne formatée.
Unité
SysUtils
Catégorie
routines de dates et d'heures
function DateToStr(Date: TDateTime): string;
Description
Utilisez DateToStr pour obtenir la représentation sous forme de chaîne d'une valeur date, dans le but de l'afficher. La conversion fait appel au format défini par la variable globale ShortDateFormat.
---------------------------
StrToDate convertit une chaîne en date.
Unité
SysUtils
Catégorie
routines de dates et d'heures
function StrToDate(const S: string): TDateTime;
Description
La date contenue dans la chaîne doit être valide.
La chaîne doit être constituée de deux ou trois nombres séparés par le caractère défini dans la variable globale DateSeparator. La séquence jour/mois/année est déterminée par la variable globale ShortDateFormat. Les combinaisons possibles sont MM/JJ/AA, JJ/MM/AA et AA/MM/JJ.
Si la chaîne contient uniquement deux nombres, la date est considérée comme faisant partie de l'année en cours (MM/JJ ou JJ/MM). Si la chaîne ne contient pas une date valide, une exception EConvertError est déclenchée.
Un format correct de date varie en fonction des valeurs de certaines constantes typées de date et d'heure.
Le format de la date varie quand les valeurs des variables de formatage date/heure sont modifiées.
La variable TwoDigitYearCenturyWindow contrôle l’interprétation des années sur deux chiffres. Si TwoDigitYearCenturyWindow est égale à 0, les années comprises entre 0 et 99 sont considérées comme faisant partie du siècle actuel. Si TwoDigitYearCenturyWindow est positive, sa valeur est soustraite de l’année en cours pour déterminer la « limite » ; les années à partir de la limite font partie du siècle actuel, alors que les années antérieures à la limite font partie du prochain siècle. Par exemple :
Année actuelle
TwoDigitYearCenturyWindow
Limite date =
jj/mm/03 date =
jj/mm/50 date =
jj/mm/68
1998 0 (valeur par défaut) 1900 1903 1950 1968
2002 0 (valeur par défaut) 2000 2003 2050 2068
1998 50 1948 2003 1950 1968
2000 50 1950 2003 1950 1968
2002 50 1952 2003 2050 1968
2020 50 1970 2003 2050 2068
2020 10 2010 2103 2050 2068
Vous pouvez utiliser TwoDigitYearCenturyWindow pour prolonger la vie des applications légales qui ne fonctionnent qu’avec des années de deux chiffres. Mais la meilleure solution consiste à demander les années sur quatre chiffres.
-------------------------------
DayOfWeek renvoie le jour de la semaine d'une date spécifiée.
Unité
SysUtils
Catégorie
routines de dates et d'heures
function DayOfWeek(Date: TDateTime): Integer;
Description
La fonction DayOfWeek renvoie le jour de la semaine d'une date sous la forme d'un entier compris entre 1 et 7. Dimanche est le premier jour de la semaine et samedi le septième.
---------------------------------------
EncodeDate renvoie un type TDateTime pour une Année, un Mois et un Jour spécifiés.
Unité
SysUtils
Catégorie
routines de dates et d'heures
function EncodeDate(Year, Month, Day: Word): TDateTime;
Description
La fonction EncodeDate renvoie une valeur de type TDateTime à partir des paramètres Year, Month et Day.
L'année doit être comprise entre 1 et 9999.
Les valeurs Month admises vont de 1 à 12.
Les valeurs Day admises vont de 2 à 28, 29, 30 ou 31, selon la valeur de Month. Par exemple, les valeurs possibles de Day pour le mois 2 (février) vont de 1 à 28, ou de 1 à 29 dans le cas d'une année bissextile.
Si les valeurs indiquées sont en-dehors de ces limites, une exception EConvertError est déclenchée. La valeur résultante est égale à 1 + le nombre de jours entre la date indiquée et le 30/12/1899.
-------------------------------------------------
DecodeDate scinde TDateTime en valeurs Année, Mois et Jour.
Unité
SysUtils
Catégorie
routines de dates et d'heures
procedure DecodeDate(Date: TDateTime; var Year, Month, Day: Word);
Description
La procédure DecodeDate sépare la valeur spécifiée par le paramètre Date en valeurs Année, Mois et Jour. Si la valeur TDateTime donnée est inférieure ou égale à zéro, l'année, le mois et le jour renvoient les paramètres initialisés à zéro.
--------------------------------------
EncodeTime renvoie un type TDateTime pour les heures, les minutes, les secondes et les millisecondes spécifiées.
Unité
SysUtils
Catégorie
routines de dates et d'heures
function EncodeTime(Hour, Min, Sec, MSec: Word): TDateTime;
Description
La fonction EncodeTime renvoie une valeur de type TDateTime à partir des paramètres Hour, Min, Sec et MSec. Les valeurs admises pour Hour vont de 0 à 12, pour Min et Sec de 0 à 59. MSec doit être comprise entre 0 et 999. Si les valeurs indiquées sont en-dehors de ces limites, une exception EConvertError est déclenchée.
La valeur résultante est égale à un nombre compris entre 0 (inclusif) et 1 (exclusif) qui indique la partie fractionnaire du jour en fonction de l'heure indiquée. La valeur 0 correspond à minuit, 0.5 correspond à midi, 0,75 correspond à 18:00, et ainsi de suite.
-------------------------------------------
DecodeTime scinde TDateTime en heures, minutes, secondes et millisecondes.
Unité
SysUtils
Catégorie
routines de dates et d'heures
procedure DecodeTime(Time: TDateTime; var Hour, Min, Sec, MSec: Word);
Description
La procédure DecodeTime sépare la valeur spécifiée par Time en heures, minutes, secondes et millisecondes.
--------------------------------
Time renvoie l'heure système.
Unité
SysUtils
Catégorie
routines de dates et d'heures
function Time: TDateTime;
Description
La fonction Time renvoie l'heure en cours.
---------------------------
Now renvoie la date et l'heure système.
Unité
SysUtils
Catégorie
routines de dates et d'heures
function Now: TDateTime;
Description
La fonction Now renvoie la date et l'heure en cours, ce qui équivaut à Date + Time.
------------------------------------
DateTimeToStr convertit une variable de type TDateTime en chaîne.
Unité
SysUtils
Catégorie
routines de dates et d'heures
function DateTimeToStr(DateTime: TDateTime): string;
Description
La fonction DateTimeToStr convertit une variable de type TDateTime en chaîne. Si le paramètre DateTime ne contient pas de valeur date, la date affichée sera 00/00/00. Si le paramètre DateTime ne contient pas de valeur horaire, l'heure affichée sera 00:00:00 AM. Vous pouvez changer le format de la chaîne en modifiant certaines des constantes type date/heure.
________________________________
TDateTime est le type utilisé par les routines date et heure afin de pouvoir conserver des valeurs date et heure.
Unité
System
type TDateTime = type Double;
Description
Delphi conserve les valeurs date et heure dans un type TDateTime. La partie entière d'une valeur de type TDateTime représente le nombre de jours depuis le 12/30/1899. La partie fractionnaire d'une valeur de type TDateTime est la partie des 24 heures écoulée.
Voici quelques exemples de valeurs de type TDateTime suivis de la date et de l'heure correspondantes :
0 12/30/1899 12:00 am
2.75 1/1/1900 6:00 pm
-1.25 12/29/1899 6:00 am
35065 1/1/1996 12:00 am
Pour trouver le nombre fractionnaire de jours entre deux dates, il suffit de soustraire les deux valeurs. De même, pour incrémenter une valeur date et heure d'un nombre fractionnaire, il suffit d'ajouter ce nombre à la valeur date et heure.
Remarque
Delphi 1.0 calculait la date depuis l'an 1 et non depuis l'an 1899. Pour convertir une date Delphi 1.0 en date Delphi 2.0, il faut soustraire 693594,0 de la date Delphi 1.0. Le format de date a été modifié pour une meilleure compatibilité avec l'automation OLE 2.0.
--------------------------------------
TTimeStamp représentes des valeurs date-heure.
Unité
SysUtils
type
TTimeStamp = record
Time: Integer; { Nombre de millisecondes depuis minuit }
Date: Integer; { Un plus nombre de jours depuis 1/1/0001 }
end;
Description
Utilisez TTimeStamp pour représenter des valeurs date-heure quand une grande précision est nécessaire dans la partie horaire. Quand les valeurs horaires n'ont pas besoin d'être précises à la milliseconde près, utilisez la représentation TDateTime qui est plus compacte.
TTimeStamp est un enregistrement contenant un champ Time qui représente le nombre de millisecondes écoulées depuis minuit et un champ Date représentant le nombre de jours calendaires écoulés depuis le début du calendrier.
-----------------------------------------
DateTimeToTimeStamp convertit une valeur TDateTime en valeur TTimeStamp.
Unité
SysUtils
Catégorie
routines de dates et d'heures
function DateTimeToTimeStamp(DateTime: TDateTime): TTimeStamp;
Description
Appelez DateTimeToTimeStamp pour convertir une valeur TDateTime en valeur TTimeStamp. Les valeurs TDateTime représentent l'heure sous forme du nombre de jours (y compris les jours non entiers) échus depuis le 30 décembre 1899 à midi. Les valeurs TTimeStamp représentent l'heure sous la forme d'une date et d'une heure , où la date est le nombre de jours écoulés depuis le début du calendrier en cours (le 1er janvier 0001 aurait la valeur 1) et l'heure est le nombre de millisecondes écoulées depuis minuit.
-------------------------------------
TimeStampToDateTime convertit une valeur TTimeStamp en valeur TDateTime.
Unité
SysUtils
Catégorie
routines de dates et d'heures
function TimeStampToDateTime(const TimeStamp: TTimeStamp): TDateTime;
Description
Appelez TimeStampToDateTime pour convertir une valeur TTimeStamp en valeur TDateTime. Les valeurs TTimeStamp représentent l'heure en séparant la date et l'heure, où la date est le nombre de jours calendaires écoulés depuis le début du calendrier actuel (le premier janvier 0001 aurait la valeur 1), et l'heure est le nombre de millisecondes depuis minuit. Les valeurs TDateTime représentent l'heure comme le nombre de jours écoulés depuis le 30 décembre 1899 à midi.
Et j'en ai peut être oublié ....
Ca devrait suffire non ?
@+
Philippe
[[ The Truth is Out There ]]