Delphi Programiranje: datum / časovna rutina

click fraud protection

Primerja dve vrednosti TDateTime (vrne "manj", "enako" ali "večje". Če del vrednosti "pade" v istem dnevu, prezre časovni del.

PrimerjajDateTime

Primerja dve vrednosti TDateTime (vrne "manj", "enako" ali "večje".

Izjava:
vnesite TValueRelationhip = -1..1
funkcijo PrimerjajDateTime (konst ADate, BDate: TDateTime): TValueRelationship

Opis:
Primerja dve vrednosti TDateTime (vrne "manj", "enako" ali "večje".

TValueRelationship predstavlja razmerje med dvema vrednostima. Vsaka od treh vrednosti TValueRelationship ima simbolično konstanto "všeč":
-1 [LessThanValue] Prva vrednost je manjša od druge vrednosti.
0 [EqualsValue] Dve vrednosti sta enaki.
1 [GreaterThanValue] Prva vrednost je večja od druge vrednosti.
PrimerjajDatum rezultatov v:

LessThanValue, če je ADate prej kot BDate.
EqualsValue, če sta datum in čas ADate in BDate enaka
GreaterThanValue, če je ADate poznejši od BDate.

Primer:

var ThisMoment, FutureMoment: TDateTime; ThisMoment: = Zdaj; FutureMoment: = IncDay (ThisMoment, 6); // doda 6 dni. // PrimerjajDateTime (ThisMoment, FutureMoment) vrne LessThanValue (-1) // PrimerjajDateTime (FutureMoment, ThisMoment) vrne GreaterThanValue (1)
instagram viewer

PrimerjajTime

Primerja dve vrednosti TDateTime (vrne "manj", "enako" ali "večje". Če obe vrednosti nastopa hkrati, prezre del z datumom.

Izjava:
vnesite TValueRelationhip = -1..1
funkcijo PrimerjajDatum (konst ADate, BDate: TDateTime): TValueRelationship

Opis:
Primerja dve vrednosti TDateTime (vrne "manj", "enako" ali "večje". Če se obe vrednosti pojavita hkrati, prezre časovni del.

TValueRelationship predstavlja razmerje med dvema vrednostima. Vsaka od treh vrednosti TValueRelationship ima simbolično konstanto "všeč":
-1 [LessThanValue] Prva vrednost je manjša od druge vrednosti.
0 [EqualsValue] Dve vrednosti sta enaki.
1 [GreaterThanValue] Prva vrednost je večja od druge vrednosti.
PrimerjajDatum rezultatov v:

LessThanValue, če se ADate pojavi prej v dnevu, ki ga določi BDate.
EqualsValue, če so časovni deli ADate in BDate enaki, ne upoštevamo datuma.
GreaterThanValue, če se ADate pojavi kasneje v dnevu, ki ga določi BDate.

Primer:

var ThisMoment, AnotherMoment: TDateTime; ThisMoment: = Zdaj; AnotherMoment: = IncHour (ThisMoment, 6); // doda 6 ur. // PrimerjajDate (ThisMoment, AnotherMoment) vrne LessThanValue (-1) // PrimerjajDate (AnotherMoment, ThisMoment) vrne GreaterThanValue (1

Funkcija datuma

Vrne trenutni sistemski datum.

Izjava:
tip TDateTime = tip Dvojna;

funkcijo datum: TDateTime;

Opis:
Vrne trenutni sistemski datum.

Sestavni del vrednosti TDateTime je število dni, ki so minili od 30. 12. 1899. Delni del vrednosti TDateTime je del 24-urnega dneva, ki je pretekel.

Če želite najti delno število dni med dvema datumoma, preprosto odštejte obe vrednosti. Prav tako za povečanje vrednosti datuma in časa za določeno delno število dni preprosto dodajte delno številko k vrednosti datuma in časa.

Primer: ShowMessage ('Danes je' + DateToStr (Datum));

DateTimeToStr funkcija

Pretvori vrednost TDateTime v niz (datum in čas).

Izjava:
tip
TDateTime = tip Dvojna;

funkcijo DayOfWeek (Datum: TDateTime): celo število;

Opis:
Vrne dan v tednu za določen datum.

DayOfWeek vrne celo število med 1 in 7, kjer je nedelja prvi dan v tednu, sobota pa sedma.
DayOfTheWeek ni v skladu s standardom ISO 8601.

Primer:

const Dnevi: matrika [1..7] of string = ('Nedelja ponedeljek torek sreda četrtek petek sobota') ShowMessage ('Danes je' + Dnevi [DayOfWeek (Datum)]); //Danes je ponedeljek

Dnevna funkcija

Poda število celotnih dni med dvema navedenima datumoma.

Izjava:
funkcijo
Dnevi med (const ANow, AThen: TDateTime): Integer;

Opis:
Poda število celotnih dni med dvema navedenima datumoma.

Funkcija šteje le cele dni. To pomeni, da bo vrnil 0 kot rezultat za razliko med 01.05.2003 23:59:59 in 01.05.2003 23:59:58 - kjer je dejanska razlika ena * celota * dan minus 1 sekunda .

Primer:

var dtNow, dtBirth: TDateTime; DaysFromBirth: celo število; dtNow: = Zdaj; dtBirth: = EncodeDate (1973, 1, 29); DaysFromBirth: = Dnevi med (dtNow, dtBirth); ShowMessage ("Žarko Gajić" obstaja "" + IntToStr (DaysFromBirth) + 'cele dni!');

Funkcija DateOf

Vrne samo datum Datum vrednosti TDateTime z nastavitvijo časovnega dela na 0.

Izjava:
funkcijo
DateOf (Datum: TDateTime): TDateTime

Opis:
Vrne samo datum Datum vrednosti TDateTime z nastavitvijo časovnega dela na 0.

DateOf nastavi časovni del na 0, kar pomeni polnoč.

Primer:

var ThisMoment, ThisDay: TDateTime; ThisMoment: = Zdaj; // -> 06/27/2003 10:29:16:138. Ta dan: = DateOf (ThisMoment); // Ta dan: = 27.06.2003 00: 00: 00: 000

Funkcija DecodeDate

Letne, mesečne in dnevne vrednosti loči od vrednosti TDateTime.

Izjava:
postopek
DecodeDate (Datum: TDateTime; var Leto, mesec, dan: Beseda) ;;

Opis:
Letne, mesečne in dnevne vrednosti loči od vrednosti TDateTime.

Če je dana vrednost TDateTime nič ali enaka nič, so za leto, mesec in dneve vrnjeni parametri nastavljeni na nič.

Primer:

var Y, M, D: Beseda; DecodeDate (Datum, Y, M, D); če je Y = 2000, potem. ShowMessage ('Ste v' napačnem 'stoletju!);

EncodeDate funkcija
Ustvari vrednost TDateTime iz letnih, mesečnih in dnevnih vrednosti.

Izjava:
funkcijo
EncodeDate (leto, mesec, dan: Word): TDateTime

Opis:
Ustvari vrednost TDateTime iz letnih, mesečnih in dnevnih vrednosti.

Leto mora biti med 1 in 9999. Veljavne mesečne vrednosti so od 1 do 12. Veljavne dnevne vrednosti so od 1 do 28, 29, 30 ali 31, odvisno od vrednosti meseca.
Če funkcija ne uspe, EncodeDate sproži izjemo EConvertError.

Primer:

var Y, M, D: Beseda; dt: TDateTime; y: = 2001; M: = 2; D: = 18; dt: = EncodeDate (Y, M, D); ShowMessage ('Borna bo. staro eno leto na '+ DateToStr (dt))

FormatDateTime funkcija
Formatira vrednost TDateTime v niz.

Izjava:
funkcijo
FormatDateTime (konst Fmt: string; Vrednost: TDateTime): vrvica;

Opis:
Formatira vrednost TDateTime v niz.

FormatDateTime uporablja obliko, določeno s parametrom Fmt. Oglejte si datoteke Delphi Pomoč za podprte specifikacije zapisa.

Primer:

var s: string; d: TDateTime;... d: = Zdaj; // danes + trenutni čas. s: = FormatDateTime ('dddd', d); // s: = sreda. s: = FormatDateTime ("" Danes je "dddd" minuta "nn", d) // s: = Danes je sreda, 24. minuta

IncDay funkcija

Doda ali podloži določeno število dni od vrednosti datuma.

Izjava:
funkcijo
IncDay (ADate: TDateTime; Dnevi: Integer = 1): TDateTime;

Opis:
Doda ali podloži določeno število dni od vrednosti datuma.

Če je parameter Days negativen, vrne datum

Primer:

var Datum: TDateTime; EncodeDate (Datum, 2003, 1, 29) // 29. januar 2003. IncDay (datum, -1) // 28. januar 2003

Zdaj deluje

Vrne trenutni datum in čas sistema.

Izjava:
tip
TDateTime = tip Dvojna;

funkcijo Zdaj: TDateTime;

Opis:
Vrne trenutni datum in čas sistema.

Sestavni del vrednosti TDateTime je število dni, ki so minili od 30. 12. 1899. Delni del vrednosti TDateTime je del 24-urnega dneva, ki je pretekel.

Če želite najti delno število dni med dvema datumoma, preprosto odštejte obe vrednosti. Prav tako za povečanje vrednosti datuma in časa za določeno delno število dni preprosto dodajte delno številko k vrednosti datuma in časa.

Primer: ShowMessage ('Zdaj je' + DateTimeToStr (Zdaj));

Leta Med funkcijo

Poda število celih let med dvema navedenima datumoma.

Izjava:
funkcijo
Leta med (konst SomeDate, AnotherDate: TDateTime): Integer;

Opis:
Poda število celih let med dvema navedenima datumoma.

YearsBet between vrne približek, ki temelji na predpostavki 365,25 dni na leto.

Primer:

var dtSome, dtDrugo: TDateTime; DaysFromBirth: celo število; dtSome: = EncodeDate (2003, 1, 1); dtAgether: = EncodeDate (2003, 12, 31); YearsBet between (dtSome, dtAgether) == 1 // neprestopno leto. dtSome: = EncodeDate (2000, 1, 1); dtAgether: = EncodeDate (2000, 12, 31); YearsBet between (dtSome, dtAgether) == 0 // prestopno leto
instagram story viewer