Porovná dvě hodnoty TDateTime (vrací "méně", "rovno" nebo "větší"). Ignoruje část Time, pokud obě hodnoty „padnou“ ve stejný den.
Funkce CompareDateTime
Porovná dvě hodnoty TDateTime (vrací "méně", "rovno" nebo "větší").
Prohlášení:
type TValueRelationship = -1..1
funkce CompareDateTime (konst ADate, BDate: TDateTime): TValueRelationship
Popis:
Porovná dvě hodnoty TDateTime (vrací "méně", "rovno" nebo "větší").
TValueRelationship představuje vztah mezi dvěma hodnotami. Každá ze tří hodnot TValueRelationship má „oblíbenou“ symbolickou konstantu:
-1 [LessThanValue] První hodnota je menší než druhá hodnota.
0 [EqualsValue] Dvě hodnoty jsou stejné.
1 [GreaterThanValue] První hodnota je větší než druhá hodnota.
PorovnatDatové výsledky v:
LessThanValue, pokud je ADate starší než BDate.
EqualsValue, pokud jsou datum a čas části ADate i BDate stejné
GreaterThanValue, pokud je ADate pozdější než BDate.
Příklad:
var ThisMoment, FutureMoment: TDateTime; ThisMoment: = Now; FutureMoment: = IncDay (ThisMoment, 6); // přidává 6 dní. // CompareDateTime (ThisMoment, FutureMoment) vrátí LessThanValue (-1) // CompareDateTime (FutureMoment, ThisMoment) vrátí GreaterThanValue (1)
Funkce CompareTime
Porovná dvě hodnoty TDateTime (vrací "méně", "rovno" nebo "větší"). Ignoruje část Date, pokud se obě hodnoty vyskytnou současně.
Prohlášení:
type TValueRelationship = -1..1
funkce PorovnatDátum (konst ADate, BDate: TDateTime): TValueRelationship
Popis:
Porovná dvě hodnoty TDateTime (vrací "méně", "rovno" nebo "větší"). Ignoruje část Time, pokud se obě hodnoty vyskytnou současně.
TValueRelationship představuje vztah mezi dvěma hodnotami. Každá ze tří hodnot TValueRelationship má „oblíbenou“ symbolickou konstantu:
-1 [LessThanValue] První hodnota je menší než druhá hodnota.
0 [EqualsValue] Dvě hodnoty jsou stejné.
1 [GreaterThanValue] První hodnota je větší než druhá hodnota.
PorovnatDatové výsledky v:
LessThanValue, pokud se ADate objeví dříve v den určený BDate.
EqualsValue, pokud jsou časové části ADate i BDate stejné, ignorují se datumové části.
GreaterThanValue, pokud se ADate objeví později v den určený BDate.
Příklad:
var ThisMoment, AnotherMoment: TDateTime; ThisMoment: = Now; AnotherMoment: = IncHour (ThisMoment, 6); // přidává 6 hodin. // CompareDate (ThisMoment, AnotherMoment) vrátí LessThanValue (-1) // CompareDate (AnotherMoment, ThisMoment) vrátí GreaterThanValue (1
Funkce data
Vrátí aktuální systémové datum.
Prohlášení:
typ TDateTime = typ Dvojnásobek;
funkce datum: TDateTime;
Popis:
Vrátí aktuální systémové datum.
Nedílnou součástí hodnoty TDateTime je počet dní, které uplynuly od 30/18/9999. Zlomková část hodnoty TDateTime je zlomek 24 hodinového dne, který uplynul.
Chcete-li najít zlomkový počet dní mezi dvěma daty, jednoduše odečtěte dvě hodnoty. Podobně pro zvýšení hodnoty data a času o určitý zlomkový počet dní jednoduše přidejte zlomkové číslo k hodnotě data a času.
Příklad: ShowMessage ('Today is' + DateToStr (Date));
Funkce DateTimeToStr
Převede hodnotu TDateTime na řetězec (datum a čas).
Prohlášení:
typ TDateTime = typ Dvojnásobek;
funkce DayOfWeek (Date: TDateTime): integer;
Popis:
Vrátí den v týdnu pro dané datum.
DayOfWeek vrátí celé číslo mezi 1 a 7, kde neděle je první den v týdnu a sobota je sedmá.
DayOfTheWeek není v souladu s normou ISO 8601.
Příklad:
const Days: pole [1..7] řetězce = ('Neděle pondělí úterý středa čtvrtek pátek sobota') ShowMessage ('Today is' + Days [DayOfWeek (Date)]); //Dnes je pondělí
Funkce DaysBetween
Udává počet celých dnů mezi dvěma zadanými daty.
Prohlášení:
funkce DaysBetween (const ANow, AThen: TDateTime): Celé číslo;
Popis:
Udává počet celých dnů mezi dvěma zadanými daty.
Funkce se počítá pouze celé dny. To znamená, že vrátí 0 jako výsledek rozdílu mezi 05/01/2003 23:59:59 a 05/01/2003 23:59:58 - kde skutečný rozdíl je jeden * celý * den mínus 1 sekunda .
Příklad:
var dtNow, dtBirth: TDateTime; DaysFromBirth: integer; dtNow: = Now; dtBirth: = EncodeDate (1973, 1, 29); DaysFromBirth: = DaysBetween (dtNow, dtBirth); ShowMessage ('Zarko Gajic' existuje '' + IntToStr (DaysFromBirth) + 'celé dny!');
Funkce DateOf
Vrátí pouze část Datum hodnoty TDateTime nastavením části Čas na 0.
Prohlášení:
funkce DateOf (Date: TDateTime): TDateTime
Popis:
Vrátí pouze část Datum hodnoty TDateTime nastavením části Čas na 0.
DateOf nastaví časovou část na 0, což znamená půlnoc.
Příklad:
var ThisMoment, ThisDay: TDateTime; ThisMoment: = Now; // -> 06/27/2003 10:29:16:138. ThisDay: = DateOf (ThisMoment); // Tento den: = 06/27/2003 00: 00: 00: 000
Funkce DecodeDate
Oddělí hodnoty roku, měsíce a dne od hodnoty TDateTime.
Prohlášení:
postup DecodeDate (Datum: TDateTime; var Rok, Měsíc, Den: Slovo) ;;
Popis:
Oddělí hodnoty roku, měsíce a dne od hodnoty TDateTime.
Pokud je daná hodnota TDateTime menší nebo rovna nule, parametry návratu roku, měsíce a dne jsou nastaveny na nulu.
Příklad:
var Y, M, D: Slovo; DecodeDate (datum, Y, M, D); pokud tedy Y = 2000. ShowMessage ('Jsi v "špatném" století!);
Funkce EncodeDate
Vytvoří hodnotu TDateTime z hodnot roku, měsíce a dne.
Prohlášení:
funkce EncodeDate (rok, měsíc, den: slovo): TDateTime
Popis:
Vytvoří hodnotu TDateTime z hodnot roku, měsíce a dne.
Rok musí být mezi 1 a 9999. Platné hodnoty měsíce jsou 1 až 12. Platné hodnoty dne jsou 1 až 28, 29, 30 nebo 31, v závislosti na hodnotě měsíce.
Pokud funkce selže, EncodeDate vyvolá výjimku EConvertError.
Příklad:
var Y, M, D: Slovo; dt: TDateTime; y: = 2001; M: = 2; D: = 18; dt: = EncodeDate (Y, M, D); ShowMessage ('Borna bude. jeden rok starý v '+ DateToStr (dt))
Funkce FormatDateTime
Naformátuje hodnotu TDateTime na řetězec.
Prohlášení:
funkce FormatDateTime (konst Fmt: string; Hodnota: TDateTime): tětiva;
Popis:
Naformátuje hodnotu TDateTime na řetězec.
FormatDateTime používá formát určený parametrem Fmt. Podporované specifikátory formátu najdete v souborech nápovědy Delphi.
Příklad:
var s: string; d: TDateTime;... d: = Now; // dnes + aktuální čas. s: = FormatDateTime ('dddd', d); // s: = středa. s: = FormatDateTime ('"Dnes je" dddd "minuta" nn', d) // s: = Dnes je středa minuta 24
Funkce IncDay
Přidá nebo odečte daný počet dní od hodnoty data.
Prohlášení:
funkce IncDay (ADate: TDateTime; Days: Integer = 1): TDateTime;
Popis:
Přidá nebo odečte daný počet dní od hodnoty data.
Pokud je parametr Days záporný, je vrácené datum
Příklad:
var datum: TDateTime; EncodeDate (Datum, 2003, 1, 29) // 29. ledna 2003. IncDay (Datum, -1) // 28. ledna 2003
Nyní funguje
Vrátí aktuální systémové datum a čas.
Prohlášení:
typ TDateTime = typ Dvojnásobek;
funkce Nyní: TDateTime;
Popis:
Vrátí aktuální systémové datum a čas.
Nedílnou součástí hodnoty TDateTime je počet dní, které uplynuly od 30/18/9999. Zlomková část hodnoty TDateTime je zlomek 24 hodinového dne, který uplynul.
Chcete-li najít zlomkový počet dní mezi dvěma daty, jednoduše odečtěte dvě hodnoty. Podobně pro zvýšení hodnoty data a času o určitý zlomkový počet dní jednoduše přidejte zlomkové číslo k hodnotě data a času.
Příklad: ShowMessage ('Now is' + DateTimeToStr (Now));
Funkce YearsBetween
Udává počet celých let mezi dvěma zadanými daty.
Prohlášení:
funkce Roky mezi (konst SomeDate, AnotherDate: TDateTime): Celé číslo;
Popis:
Udává počet celých let mezi dvěma zadanými daty.
YearsBetween se vrací aproximace na základě předpokladu 365,25 dní v roce.
Příklad:
var dtSome, dtDalší: TDateTime; DaysFromBirth: integer; dtSome: = EncodeDate (2003, 1, 1); dtAnother: = EncodeDate (2003, 12, 31); YearsBetween (dtSome, dtAnother) == 1 // nepřestupný rok. dtSome: = EncodeDate (2000, 1, 1); dtAnother: = EncodeDate (2000, 12, 31); YearsBetween (dtSome, dtAnother) == 0 // přestupný rok