PureBasic
PureBasic
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 PureBasic Downloads
IncludeFile "CkDtObj.pb"
IncludeFile "CkJsonObject.pb"
IncludeFile "CkDateTime.pb"
Procedure ChilkatExample()
success.i = 0
; Parse Microsoft JSON Dates (AJAX Dates)
json.i = CkJsonObject::ckCreate()
If json.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkJsonObject::ckLoad(json,"{ " + Chr(34) + "AchievementDate" + Chr(34) + ":" + Chr(34) + "/Date(1540229468330-0500)/" + Chr(34) + "}")
dt.i = CkDateTime::ckCreate()
If dt.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkJsonObject::ckDateOf(json,"AchievementDate",dt)
If success <> 1
Debug "Unable to parse a date/time."
CkJsonObject::ckDispose(json)
CkDateTime::ckDispose(dt)
ProcedureReturn
EndIf
; Show the date in different formats:
bLocal.i = 1
Debug "RFC822: " + CkDateTime::ckGetAsRfc822(dt,bLocal)
Debug "Timestamp: " + CkDateTime::ckGetAsTimestamp(dt,bLocal)
Debug "YYYY-MM-DD: " + CkDateTime::ckGetAsIso8601(dt,"YYYY-MM-DD",bLocal)
; Get integer values for year, month, day, etc.
dtObj.i = CkDtObj::ckCreate()
If dtObj.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkDateTime::ckToDtObj(dt,bLocal,dtObj)
Debug "year: " + Str(CkDtObj::ckYear(dtObj))
Debug "month: " + Str(CkDtObj::ckMonth(dtObj))
Debug "day: " + Str(CkDtObj::ckDay(dtObj))
Debug "hour: " + Str(CkDtObj::ckHour(dtObj))
Debug "minute: " + Str(CkDtObj::ckMinute(dtObj))
Debug "seconds: " + Str(CkDtObj::ckSecond(dtObj))
; 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
CkJsonObject::ckDispose(json)
CkDateTime::ckDispose(dt)
CkDtObj::ckDispose(dtObj)
ProcedureReturn
EndProcedure