Description |
The DecodeDateTime procedure extracts year, month, day, hour, minute, second and milli-second values from a given SourceDate TDateTime type value.
It stores the values in the output variables : Year, Month, Day, Hour, Min, Sec and MSec.
|
|
Related commands |
DecodeDate |
|
Extracts the year, month, day values from a TDateTime var. |
DecodeTime |
|
Break a TDateTime value into individual time values |
EncodeDate |
|
Build a TDateTime value from year, month and day values |
EncodeDateTime |
|
Build a TDateTime value from day and time values |
EncodeTime |
|
Build a TDateTime value from hour, min, sec and msec values |
RecodeDate |
|
Change only the date part of a TDateTime variable |
RecodeTime |
|
Change only the time part of a TDateTime variable |
ReplaceDate |
|
Change only the date part of a TDateTime variable |
ReplaceTime |
|
Change only the time part of a TDateTime variable |
|
|
|
Example code : Add a month to the date and then extract the date/time individual values |
// Full Unit code. // ----------------------------------------------------------- // You must store this code in a unit called Unit1 with a form // called Form1 that has an OnCreate event called FormCreate. unit Unit1; interface uses DateUtils, // Unit containing the DecodeDateTime command SysUtils, Forms, Dialogs; type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); end; var Form1: TForm1; implementation {$R *.dfm} // Include form definitions procedure TForm1.FormCreate(Sender: TObject); var
myDate : TDateTime;
myYear, myMonth, myDay : Word;
myHour, myMin, mySec, myMilli : Word;
begin // Set up the myDate variable to have a December 2000 value
myDate := StrToDateTime('29/12/2000 12:45:12.34');
// Now add a month to this value
myDate := IncMonth(myDate);
// And let us see what we get
DecodeDateTime(myDate, myYear, myMonth, myDay,
myHour, myMin, mySec, myMilli);
ShowMessage('myDate now = '+DateToStr(myDate));
ShowMessage('myHour = '+IntToStr(myHour));
ShowMessage('myMin = '+IntToStr(myMin));
ShowMessage('mySec = '+IntToStr(mySec));
ShowMessage('myMilli = '+IntToStr(myMilli));
ShowMessage('myDay = '+IntToStr(myDay));
ShowMessage('myMonth = '+IntToStr(myMonth));
ShowMessage('myYear = '+IntToStr(myYear));
end; end.
|
Hide full unit code |
myDate now = 29/01/2001
myHour = 12
myMin = 45
mySec = 12
myMilli = 34
myDay = 29
myMonth = 1
myYear = 2001
|
|