Sample code for 30+ languages & platforms
PowerBuilder Requires Chilkat v11.0.0+

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 PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
oleobject loo_Json
oleobject loo_Dt
integer li_BLocal
oleobject loo_DtObj

li_Success = 0

//  Parse Microsoft JSON Dates (AJAX Dates)
loo_Json = create oleobject
li_rc = loo_Json.ConnectToNewObject("Chilkat.JsonObject")
if li_rc < 0 then
    destroy loo_Json
    MessageBox("Error","Connecting to COM object failed")
    return
end if

li_Success = loo_Json.Load("{ ~"AchievementDate~":~"/Date(1540229468330-0500)/~"}")

loo_Dt = create oleobject
li_rc = loo_Dt.ConnectToNewObject("Chilkat.CkDateTime")

li_Success = loo_Json.DateOf("AchievementDate",loo_Dt)
if li_Success <> 1 then
    Write-Debug "Unable to parse a date/time."
    destroy loo_Json
    destroy loo_Dt
    return
end if

//  Show the date in different formats:
li_BLocal = 1
Write-Debug "RFC822: " + loo_Dt.GetAsRfc822(li_BLocal)
Write-Debug "Timestamp: " + loo_Dt.GetAsTimestamp(li_BLocal)
Write-Debug "YYYY-MM-DD: " + loo_Dt.GetAsIso8601("YYYY-MM-DD",li_BLocal)

//  Get integer values for year, month, day, etc.
loo_DtObj = create oleobject
li_rc = loo_DtObj.ConnectToNewObject("Chilkat.DtObj")

loo_Dt.ToDtObj(li_BLocal,loo_DtObj)

Write-Debug "year: " + string(loo_DtObj.Year)
Write-Debug "month: " + string(loo_DtObj.Month)
Write-Debug "day: " + string(loo_DtObj.Day)
Write-Debug "hour: " + string(loo_DtObj.Hour)
Write-Debug "minute: " + string(loo_DtObj.Minute)
Write-Debug "seconds: " + string(loo_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


destroy loo_Json
destroy loo_Dt
destroy loo_DtObj