TDateTime/fi

From Free Pascal wiki

English (en) suomi (fi)

TDateTime on yhdistelmä päiväyksestä ja ajasta. Se käyttää attribuutteina: vuotta, kuukautta, päivää, tuntia, minuuttia, sekuntia ja mikrosekunteja.

Hae tämänhetkinen aika

Käännösyksikön (unit) SysUtils funktio Now noutaa järjestelmän tämänhetkisen päivämäärän ja kellonajan.


 function Now : TDateTime;

TDateTimen lisääminen ja vähentäminen

Käännösyksikön DateUtils funktio DaysBetween kertoo montako päivää on kahden TDateTime-päivämäärän välillä.

  function DaysBetween ( const ToDate, FromDate : TDateTime ) : Integer;

Käännösyksikön DateUtils funktio WeeksBetween kertoo montako kokonaista viikkoa on kahden TDateTime-päivämäärän välillä.

  function WeeksBetween( const ToDate, FromDate : TDateTime ):Integer;


program DateProject1;

uses
  SysUtils,DateUtils;
const
  DateFormatChars = 'dd"/"mm"/"yyyy';
var
  DateTime1, DateTime2: TDateTime;
begin
  DateTime1 := now;
  DateTime2 := DateTime1 + 4*7;       //28 päivää myöhemmin
  WriteLn('Tämänhetkinen päivämäärä on '+ FormatDateTime( DateFormatChars, DateTime1 ));
  WriteLn('28 päivää myöhemmin päivämäärä on '+ FormatDateTime( DateFormatChars, DateTime2 ));
  WriteLn('Päivien lukumäärä on '+ ( DaysBetween( DateTime1 ,DateTime2)).ToString );
  WriteLn('Viikkojen määrä on '+ ( WeeksBetween( DateTime1 ,DateTime2)).ToString );
  ReadLn;
end.

Aseta päivämäärä

Käännösyksikön SysUtils funktio EncodeDate asettaa päiväyksen.

  function EncodeDate ( const Year, Month, Day : Word ) : TDateTime;

Vertaa kahta TDateTime-päivämäärää

program CompareTwoDateTime;

uses
  SysUtils, DateUtils;
var
   firstDate, secondDate: TDateTime;
begin
  firstDate := EncodeDate(2000, 2, 29);
  secondDate := EncodeDate(2018, 8, 11);
  if DaysBetween( firstDate, secondDate) = 0
    then WriteLn('Molemmat päivät ovat samat')
    else
      if firstDate < secondDate
        then WriteLn('Ensimmäinen päivämäärä on aikaisempi')
        else WriteLn('Ensimmäinen päivämäärä on myöhemmin');
  ReadLn;
end.

Katso myös