Vertaa kahta TDateTime-arvoa (palauttaa "vähemmän", "yhtä" tai "suurempi"). Ohittaa aika-osan, jos molemmat arvot "putoavat" samana päivänä.
VertaaDateTime-toiminto
Vertaa kahta TDateTime-arvoa (palauttaa "vähemmän", "yhtä" tai "suurempi").
ilmoitus:
tyyppi TValueRelationship = -1..1
toimia CompareDateTime (const ADate, BDate: TDateTime): TValueRelationship
Kuvaus:
Vertaa kahta TDateTime-arvoa (palauttaa "vähemmän", "yhtä" tai "suurempi").
TValueRelationship edustaa kahden arvon välistä suhdetta. Jokaisella kolmella TValueRelationship -arvolla on symbolinen vakio "halunnut":
-1 [LessThanValue] Ensimmäinen arvo on pienempi kuin toinen arvo.
0 [EqualsValue] Kaksi arvoa ovat samat.
1 [GreaterThanValue] Ensimmäinen arvo on suurempi kuin toinen arvo.
Vertaa päivämäärän tuloksia:
LessThanValue, jos ADate on aikaisempi kuin BDate.
EqualsValue, jos sekä ADate: n että BDate: n päivämäärä- ja aika-osat ovat samat
GreaterThanValue, jos ADate on myöhempi kuin BDate.
Esimerkki:
var ThisMoment, FutureMoment: TDateTime; TämäMomenti: = Nyt; FutureMoment: = IncDay (ThisMoment, 6); // lisää 6 päivää. // CompareDateTime (ThisMoment, FutureMoment) palauttaa LessThanValue (-1) // CompareDateTime (FutureMoment, ThisMoment) palauttaa GreaterThanValue (1)
VertaaTime-toiminto
Vertaa kahta TDateTime-arvoa (palauttaa "vähemmän", "yhtä" tai "suurempi"). Ohittaa päivämääräosan, jos molemmat arvot esiintyvät samanaikaisesti.
ilmoitus:
tyyppi TValueRelationship = -1..1
toimia CompareDate (const ADate, BDate: TDateTime): TValueRelationship
Kuvaus:
Vertaa kahta TDateTime-arvoa (palauttaa "vähemmän", "yhtä" tai "suurempi"). Ohittaa aika-osan, jos molemmat arvot esiintyvät samanaikaisesti.
TValueRelationship edustaa kahden arvon välistä suhdetta. Jokaisella kolmella TValueRelationship -arvolla on symbolinen vakio "halunnut":
-1 [LessThanValue] Ensimmäinen arvo on pienempi kuin toinen arvo.
0 [EqualsValue] Kaksi arvoa ovat samat.
1 [GreaterThanValue] Ensimmäinen arvo on suurempi kuin toinen arvo.
Vertaa päivämäärän tuloksia:
LessThanValue, jos ADate tapahtuu aikaisemmin BDate: n määrittämänä päivänä.
EqualsValue, jos sekä ADate: n että BDate: n aikaosuudet ovat samat, huomioimatta päivämääräosa.
GreaterThanValue, jos ADate tapahtuu myöhemmin BDate: n määrittämänä päivänä.
Esimerkki:
var ThisMoment, AnotherMoment: TDateTime; TämäMomenti: = Nyt; AnotherMoment: = IncHour (ThisMoment, 6); // lisää 6 tuntia. // CompareDate (ThisMoment, AnotherMoment) palauttaa LessThanValue (-1) // CompareDate (AnotherMoment, ThisMoment) palauttaa GreaterThanValue (1
Päiväystoiminto
Palauttaa nykyisen järjestelmäpäivämäärän.
ilmoitus:
tyyppi TDateTime = tyyppi Kaksinkertainen;
toimia päivämäärä: TDateTime;
Kuvaus:
Palauttaa nykyisen järjestelmäpäivämäärän.
Kiinteä osa TDateTime-arvoa on päivien lukumäärä, joka on kulunut 30.12.1998 jälkeen. Jaksoittainen osa TDateTime-arvosta on murto-osa 24 tunnin päivästä, joka on kulunut.
Jos haluat löytää murto-osan päivien lukumäärästä kahden päivämäärän välillä, vähennä nämä kaksi arvoa. Samoin lisätäksesi päivämäärä- ja aika-arvoa tietyllä murto-päivämäärällä, lisää vain murtoluku päivämäärä- ja aika-arvoon.
Esimerkki: ShowMessage ('Tänään on' + DateToStr (Date));
DateTimeToStr-toiminto
Muuntaa TDateTime-arvon merkkijonoksi (päivämäärä ja aika).
ilmoitus:
tyyppi TDateTime = tyyppi Kaksinkertainen;
toimia DayOfWeek (Päivämäärä: TDateTime): kokonaisluku;
Kuvaus:
Palauttaa tietyn päivämäärän viikonpäivän.
DayOfWeek palauttaa kokonaisluvun välillä 1-7, jolloin sunnuntai on viikon ensimmäinen päivä ja lauantai on seitsemäs.
DayOfTheWeek ei ole ISO 8601 -standardin mukainen.
Esimerkki:
const Days: taulukon [1..7] merkkijono = ('Maanantai tiistai keskiviikko torstai perjantai lauantai') ShowMessage ('Tänään on' + päivää [DayOfWeek (Date)])); //Tänään on maanantai
DaysBetween-toiminto
Antaa kokonaisten päivien lukumäärän kahden määritetyn päivämäärän välillä.
ilmoitus:
toimia DaysBetween (jatkuu nyt, AThen: TDateTime): Kokonaisluku;
Kuvaus:
Antaa kokonaisten päivien lukumäärän kahden määritetyn päivämäärän välillä.
Toiminto laskee vain kokonaisia päiviä. Tämä tarkoittaa, että se palauttaa arvon 0 tuloksena erästä 05.01.2003 23:59:59 ja 05.01.2003 23:59:58 - missä todellinen ero on yksi * koko * päivä miinus 1 sekunti .
Esimerkki:
var dtNow, dtBirth: TDateTime; DaysFromBirth: kokonaisluku; dtNow: = Nyt; dtBirth: = EncodeDate (1973, 1, 29); DaysFromBirth: = DaysBetween (dtNow, dtBirth); ShowMessage ('Zarko Gajic "on olemassa' '+ + IntToStr (DaysFromBirth) + 'kokonaiset päivät!');
DateOf-toiminto
Palauttaa vain TDateTime-arvon Päivämäärä-osan asettamalla Aika-arvoksi 0.
ilmoitus:
toimia DateOf (Päivämäärä: TDateTime): TDateTime
Kuvaus:
Palauttaa vain TDateTime-arvon Päivämäärä-osan asettamalla Aika-arvoksi 0.
DateOf asettaa aikavälin arvoon 0, mikä tarkoittaa keskiyötä.
Esimerkki:
var ThisMoment, ThisDay: TDateTime; TämäMomenti: = Nyt; // -> 06/27/2003 10:29:16:138. ThisDay: = DateOf (ThisMoment); // Tämä päivä: = 06/27/2003 00: 00: 00: 000
DecodeDate-toiminto
Erottaa vuoden, kuukauden ja päivän arvot TDateTime-arvosta.
ilmoitus:
menettely DecodeDate (Päivämäärä: TDateTime; var Vuosi, kuukausi, päivä: sana) ;;
Kuvaus:
Erottaa vuoden, kuukauden ja päivän arvot TDateTime-arvosta.
Jos annettu TDateTime-arvo on pienempi tai yhtä suuri kuin nolla, vuoden, kuukauden ja päivän palautusparametrit asetetaan nollaan.
Esimerkki:
var Y, M, D: Word; DecodeDate (päivämäärä, Y, M, D); jos Y = 2000, niin. ShowMessage ('Olet "väärällä" vuosisadalla!);
EncodeDate-toiminto
Luo TDateTime-arvon vuoden, kuukauden ja päivän arvoista.
ilmoitus:
toimia EncodeDate (vuosi, kuukausi, päivä: sana): TDateTime
Kuvaus:
Luo TDateTime-arvon vuoden, kuukauden ja päivän arvoista.
Vuoden on oltava 1 - 9999. Voimassa olevat kuukausiarvot ovat 1–12. Päivän voimassa olevat arvot ovat 1 - 28, 29, 30 tai 31, kuukausiarvosta riippuen.
Jos toiminto epäonnistuu, EncodeDate nostaa EConvertError-poikkeuksen.
Esimerkki:
var Y, M, D: Word; dt: TDateTime; y: = 2001; M: = 2; D: = 18; dt: = EncodeDate (Y, M, D); ShowMessage ('Borna tulee olemaan. yhden vuoden ikäinen '+ DateToStr (dt))
FormatDateTime-toiminto
Alustaa TDateTime-arvon merkkijonoksi.
ilmoitus:
toimia FormatDateTime (const Fmt: merkkijono; Arvo: TDateTime): jono;
Kuvaus:
Alustaa TDateTime-arvon merkkijonoksi.
FormatDateTime käyttää Fmt-parametrin määrittämää muotoa. Katso tuetut muotoilun määrittäjät Delphin ohjetiedostoista.
Esimerkki:
var s: merkkijono; d: TDateTime;... d: = Nyt; // tänään + nykyinen aika. s: = FormatDateTime (dddd ', d); // s: = keskiviikko. s: = FormatDateTime ('"Tänään on" dddd "minuutti" nn', d) // s: = Tänään on keskiviikon minuutti 24
IncDay-toiminto
Lisää tai vähentää tietyn määrän päiviä päivämääräarvosta.
ilmoitus:
toimia IncDay (ADate: TDateTime; Päivät: Kokonaisluku = 1): TDateTime;
Kuvaus:
Lisää tai vähentää tietyn määrän päiviä päivämääräarvosta.
Jos Päivät-parametri on negatiivinen, palautettu päivämäärä on
Esimerkki:
var Päivämäärä: TDateTime; EncodeDate (päivämäärä, 2003, 1, 29) // 29. tammikuuta 2003. IncDay (päivämäärä, -1) // 28. tammikuuta 2003
Nyt toiminto
Palauttaa nykyisen järjestelmän päivämäärän ja kellonajan.
ilmoitus:
tyyppi TDateTime = tyyppi Kaksinkertainen;
toimia Nyt: TDateTime;
Kuvaus:
Palauttaa nykyisen järjestelmän päivämäärän ja kellonajan.
Kiinteä osa TDateTime-arvoa on päivien lukumäärä, joka on kulunut 30.12.1998 jälkeen. Jaksoittainen osa TDateTime-arvosta on murto-osa 24 tunnin päivästä, joka on kulunut.
Jos haluat löytää murto-osan päivien lukumäärästä kahden päivämäärän välillä, vähennä nämä kaksi arvoa. Samoin lisätäksesi päivämäärä- ja aika-arvoa tietyllä murto-päivämäärällä, lisää vain murtoluku päivämäärä- ja aika-arvoon.
Esimerkki: ShowMessage ('Nyt on' + DateTimeToStr (Nyt));
YearsBetween -toiminto
Antaa kokonaisten vuosien määrän kahden määritetyn päivämäärän välillä.
ilmoitus:
toimia YearsBetween (const SomeDate, AnotherDate: TDateTime): Kokonaisluku;
Kuvaus:
Antaa kokonaisten vuosien määrän kahden määritetyn päivämäärän välillä.
YearsBetween palauttaa likiarvon, joka perustuu oletukseen, että vuodessa on 365,25 päivää.
Esimerkki:
var dtSome, dtAnother: TDateTime; DaysFromBirth: kokonaisluku; dtSome: = EncodeDate (2003, 1, 1); dtAnother: = EncodeDate (2003, 12, 31); YearsBetween (dtSome, dtAnother) == 1 // muu kuin vuosi. dtSome: = EncodeDate (2000, 1, 1); dtAnother: = EncodeDate (2000, 12, 31); YearsBetween (dtSome, dtAnother) == 0 // karkausvuosi