Delphi ActiveX
Delphi ActiveX
Parse a Microsoft JSON Date (MS AJAX Date)
See more JSON Examples
Demonstrates how to parse a Microsoft JSON Date, also known as an MSAJAX date.Chilkat Delphi ActiveX Downloads
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB;
...
procedure TForm1.Button1Click(Sender: TObject);
var
success: Integer;
json: TChilkatJsonObject;
dt: TCkDateTime;
bLocal: Integer;
dtObj: TDtObj;
begin
success := 0;
// Parse Microsoft JSON Dates (AJAX Dates)
json := TChilkatJsonObject.Create(Self);
success := json.Load('{ "AchievementDate":"/Date(1540229468330-0500)/"}');
dt := TCkDateTime.Create(Self);
success := json.DateOf('AchievementDate',dt.ControlInterface);
if (success <> 1) then
begin
Memo1.Lines.Add('Unable to parse a date/time.');
Exit;
end;
// Show the date in different formats:
bLocal := 1;
Memo1.Lines.Add('RFC822: ' + dt.GetAsRfc822(bLocal));
Memo1.Lines.Add('Timestamp: ' + dt.GetAsTimestamp(bLocal));
Memo1.Lines.Add('YYYY-MM-DD: ' + dt.GetAsIso8601('YYYY-MM-DD',bLocal));
// Get integer values for year, month, day, etc.
dtObj := TDtObj.Create(Self);
dt.ToDtObj(bLocal,dtObj.ControlInterface);
Memo1.Lines.Add('year: ' + IntToStr(dtObj.Year));
Memo1.Lines.Add('month: ' + IntToStr(dtObj.Month));
Memo1.Lines.Add('day: ' + IntToStr(dtObj.Day));
Memo1.Lines.Add('hour: ' + IntToStr(dtObj.Hour));
Memo1.Lines.Add('minute: ' + IntToStr(dtObj.Minute));
Memo1.Lines.Add('seconds: ' + IntToStr(dtObj.Second));
// Sample output:
// RFC822: Mon, 22 Oct 2018 17:31:08 -0500
// Timestamp: 2018-10-22T17:31:08-05:00
// YYYY-MM-DD: 2018-10-22
// year: 2018
// month: 10
// day: 22
// hour: 17
// minute: 31
// seconds: 8
end;