Porównuje dwie wartości TDateTime (zwraca „mniej”, „równy” lub „większy”). Ignoruje część Czas, jeśli obie wartości „spadają” tego samego dnia.
Funkcja CompareDateTime
Porównuje dwie wartości TDateTime (zwraca „mniej”, „równy” lub „większy”).
Deklaracja:
typ TValueRelationship = -1..1
funkcjonować CompareDateTime (const ADate, BDate: TDateTime): TValueRelationship
Opis:
Porównuje dwie wartości TDateTime (zwraca „mniej”, „równy” lub „większy”).
TValueRelationship reprezentuje związek między dwiema wartościami. Każda z trzech wartości TValueRelationship ma „sympatyczną” stałą symboliczną:
-1 [LessThanValue] Pierwsza wartość jest mniejsza niż druga wartość.
0 [EqualsValue] Dwie wartości są równe.
1 [GreaterThanValue] Pierwsza wartość jest większa niż druga wartość.
CompareDate powoduje:
LessThanValue, jeśli ADate jest wcześniejszy niż BDate.
EqualsValue, jeśli części daty i godziny zarówno ADate, jak i BDate są takie same
GreaterThanValue, jeśli ADate jest późniejszy niż BDate.
Przykład:
var ThisMoment, FutureMoment: TDateTime; ThisMoment: = Teraz; FutureMoment: = IncDay (ThisMoment, 6); // dodaje 6 dni. // CompareDateTime (ThisMoment, FutureMoment) zwraca LessThanValue (-1) // CompareDateTime (FutureMoment, ThisMoment) zwraca GreaterThanValue (1)
Funkcja CompareTime
Porównuje dwie wartości TDateTime (zwraca „mniej”, „równy” lub „większy”). Ignoruje część Data, jeśli obie wartości występują jednocześnie.
Deklaracja:
typ TValueRelationship = -1..1
funkcjonować CompareDate (const ADate, BDate: TDateTime): TValueRelationship
Opis:
Porównuje dwie wartości TDateTime (zwraca „mniej”, „równy” lub „większy”). Ignoruje część Czas, jeśli obie wartości występują jednocześnie.
TValueRelationship reprezentuje związek między dwiema wartościami. Każda z trzech wartości TValueRelationship ma „sympatyczną” stałą symboliczną:
-1 [LessThanValue] Pierwsza wartość jest mniejsza niż druga wartość.
0 [EqualsValue] Dwie wartości są równe.
1 [GreaterThanValue] Pierwsza wartość jest większa niż druga wartość.
CompareDate powoduje:
LessThanValue, jeśli ADate występuje wcześniej w dniu określonym przez BDate.
Równa się, jeśli części czasu zarówno ADate, jak i BDate są takie same, ignorując część Data.
GreaterThanValue, jeśli ADate wystąpi później w dniu określonym przez BDate.
Przykład:
var ThisMoment, AnotherMoment: TDateTime; ThisMoment: = Teraz; AnotherMoment: = IncHour (ThisMoment, 6); // dodaje 6 godzin. // CompareDate (ThisMoment, AnotherMoment) zwraca LessThanValue (-1) // CompareDate (AnotherMoment, ThisMoment) zwraca GreaterThanValue (1
Funkcja daty
Zwraca bieżącą datę systemową.
Deklaracja:
rodzaj TDateTime = rodzaj Podwójnie;
funkcjonować data: TDateTime;
Opis:
Zwraca bieżącą datę systemową.
Integralną częścią wartości TDateTime jest liczba dni, które upłynęły od 12/30/1899. Część ułamkowa wartości TDateTime to ułamek 24-godzinnego dnia, który upłynął.
Aby znaleźć ułamkową liczbę dni między dwiema datami, po prostu odejmij dwie wartości. Podobnie, aby zwiększyć wartość daty i godziny o określoną ułamkową liczbę dni, wystarczy dodać liczbę ułamkową do wartości daty i godziny.
Przykład: ShowMessage („Today is” + DateToStr (Date));
Funkcja DateTimeToStr
Konwertuje wartość TDateTime na ciąg znaków (data i godzina).
Deklaracja:
rodzaj TDateTime = rodzaj Podwójnie;
funkcjonować DayOfWeek (Data: TDateTime): liczba całkowita;
Opis:
Zwraca dzień tygodnia dla określonej daty.
DayOfWeek zwraca liczbę całkowitą od 1 do 7, gdzie niedziela jest pierwszym dniem tygodnia, a sobota jest siódmym.
DayOfTheWeek nie jest zgodny ze standardem ISO 8601.
Przykład:
const Days: tablica [1..7] ciągu = ('Niedziela poniedziałek wtorek środa czwartek piątek sobota') ShowMessage („Today is” + Days [DayOfWeek (Date)]); //Dziś jest poniedziałek
Funkcja DaysBetween
Podaje liczbę pełnych dni między dwiema określonymi datami.
Deklaracja:
funkcjonować DaysBetween (const ANow, AThen: TDateTime): Integer;
Opis:
Podaje liczbę pełnych dni między dwiema określonymi datami.
Funkcja liczy tylko całe dni. Oznacza to, że zwróci 0 jako wynik różnicy między 05/01/2003 23:59:59 a 05/01/2003 23:59:58 - gdzie rzeczywista różnica wynosi jeden * cały * dzień minus 1 sekunda .
Przykład:
var dtNow, dtBirth: TDateTime; DaysFromBirth: liczba całkowita; dtNow: = Teraz; dtBirth: = EncodeDate (1973, 1, 29); DaysFromBirth: = DaysBetween (dtNow, dtBirth); ShowMessage („Zarko Gajic” istnieje ”+) IntToStr (DaysFromBirth) + „całe dni!”);
Funkcja DateOf
Zwraca tylko część Data wartości TDateTime, ustawiając Część czasu na 0.
Deklaracja:
funkcjonować DateOf (Data: TDateTime): TDateTime
Opis:
Zwraca tylko część Data wartości TDateTime, ustawiając Część czasu na 0.
DateOf ustawia część czasu na 0, co oznacza północ.
Przykład:
var ThisMoment, ThisDay: TDateTime; ThisMoment: = Teraz; // -> 06/27/2003 10:29:16:138. ThisDay: = DateOf (ThisMoment); // Ten dzień: = 06/27/2003 00: 00: 00: 000
Funkcja DecodeDate
Oddziela wartości roku, miesiąca i dnia od wartości TDateTime.
Deklaracja:
procedura DecodeDate (Data: TDateTime; var Rok, miesiąc, dzień: słowo) ;;
Opis:
Oddziela wartości roku, miesiąca i dnia od wartości TDateTime.
Jeśli podana wartość TDateTime jest mniejsza lub równa zero, parametry powrotu roku, miesiąca i dnia są zerowane.
Przykład:
var Y, M, D: Słowo; DecodeDate (data, Y, M, D); jeśli Y = 2000, to. ShowMessage („Jesteś w„ złym ”wieku!);
Funkcja EncodeDate
Tworzy wartość TDateTime na podstawie wartości roku, miesiąca i dnia.
Deklaracja:
funkcjonować EncodeDate (rok, miesiąc, dzień: słowo): TDateTime
Opis:
Tworzy wartość TDateTime na podstawie wartości roku, miesiąca i dnia.
Rok musi wynosić od 1 do 9999. Prawidłowe wartości miesiąca to od 1 do 12. Prawidłowe wartości dnia to od 1 do 28, 29, 30 lub 31, w zależności od wartości miesiąca.
Jeśli funkcja się nie powiedzie, EncodeDate zgłasza wyjątek EConvertError.
Przykład:
var Y, M, D: Słowo; dt: TDateTime; y: = 2001; M: = 2; D: = 18; dt: = EncodeDate (Y, M, D); ShowMessage („Borna będzie. roczek w '+ DateToStr (dt))
Funkcja FormatDateTime
Formatuje wartość TDateTime do łańcucha.
Deklaracja:
funkcjonować FormatDateTime (const Fmt: string; Wartość: TDateTime): strunowy;
Opis:
Formatuje wartość TDateTime do łańcucha.
FormatDateTime używa formatu określonego przez parametr Fmt. Obsługiwane specyfikatory formatu znajdują się w plikach pomocy Delphi.
Przykład:
var s: string; d: TDateTime;... d: = teraz; // dzisiaj + aktualny czas. s: = FormatDateTime ('dddd', d); // s: = środa. s: = FormatDateTime („„ Dzisiaj jest „dddd” minuta ”nn”, d) // s: = Dzisiaj jest środa, minuta 24
Funkcja IncDay
Dodaje lub odejmuje określoną liczbę dni od wartości daty.
Deklaracja:
funkcjonować IncDay (ADate: TDateTime; Dni: Liczba całkowita = 1): TDateTime;
Opis:
Dodaje lub odejmuje określoną liczbę dni od wartości daty.
Jeśli parametr Days ma wartość ujemną, zwracana data to
Przykład:
var Data: TDateTime; EncodeDate (Data, 2003, 1, 29) // 29 stycznia 2003. IncDay (data, -1) // 28 stycznia 2003 r
Teraz funkcja
Zwraca bieżącą datę i godzinę systemową.
Deklaracja:
rodzaj TDateTime = rodzaj Podwójnie;
funkcjonować Teraz: TDateTime;
Opis:
Zwraca bieżącą datę i godzinę systemową.
Integralną częścią wartości TDateTime jest liczba dni, które upłynęły od 12/30/1899. Część ułamkowa wartości TDateTime to ułamek 24-godzinnego dnia, który upłynął.
Aby znaleźć ułamkową liczbę dni między dwiema datami, po prostu odejmij dwie wartości. Podobnie, aby zwiększyć wartość daty i godziny o określoną ułamkową liczbę dni, wystarczy dodać liczbę ułamkową do wartości daty i godziny.
Przykład: ShowMessage („Teraz jest” + DateTimeToStr (Teraz));
Funkcja YearsBetween
Podaje liczbę pełnych lat między dwiema określonymi datami.
Deklaracja:
funkcjonować Lata między (const SomeDate, AnotherDate: TDateTime): Integer;
Opis:
Podaje liczbę pełnych lat między dwiema określonymi datami.
YearsBetween zwraca przybliżenie oparte na założeniu 365,25 dni w roku.
Przykład:
var dtSome, dtAnother: TDateTime; DaysFromBirth: liczba całkowita; dtSome: = EncodeDate (2003, 1, 1); dtAnother: = EncodeDate (2003, 12, 31); YearsBetween (dtSome, dtAnother) == 1 // rok bez przestępowania. dtSome: = EncodeDate (2000, 1, 1); dtAnother: = EncodeDate (2000, 12, 31); YearsBetween (dtSome, dtAnother) == 0 // rok przestępny