PowerBuilder
PowerBuilder
How to Parse a TimeStamp (such as 2016-11-11T14:32:17.0908971Z)
Timestamps are frequently used in REST API responses. This example demonstrates how to parse a timestamp string to get at the date/time components in the local timezone or in the GMT/UTC timezone.Chilkat PowerBuilder Downloads
integer li_rc
string ls_StrTimestamp
oleobject loo_DateTime
integer li_BLocalTimezone
oleobject loo_Dt
// Let's say we have a timestamp string such as 2016-11-11T14:32:17.0908971Z
ls_StrTimestamp = "2016-11-11T14:32:17.0908971Z"
loo_DateTime = create oleobject
li_rc = loo_DateTime.ConnectToNewObject("Chilkat.CkDateTime")
if li_rc < 0 then
destroy loo_DateTime
MessageBox("Error","Connecting to COM object failed")
return
end if
loo_DateTime.SetFromTimestamp(ls_StrTimestamp)
// Get a DtObj in the local timezone.
li_BLocalTimezone = 1
loo_Dt = create oleobject
li_rc = loo_Dt.ConnectToNewObject("Chilkat.DtObj")
loo_DateTime.ToDtObj(li_BLocalTimezone,loo_Dt)
// Get the individual date/time components
Write-Debug "-- Local Time --"
Write-Debug "Year: " + string(loo_Dt.Year)
Write-Debug "Month: " + string(loo_Dt.Month)
Write-Debug "Day: " + string(loo_Dt.Day)
Write-Debug "Hour: " + string(loo_Dt.Hour)
Write-Debug "Minutes: " + string(loo_Dt.Minute)
Write-Debug "Seconds: " + string(loo_Dt.Second)
// Get a DtObj in the GMT/UTC timezone.
li_BLocalTimezone = 0
loo_DateTime.ToDtObj(li_BLocalTimezone,loo_Dt)
// Get the individual date/time components
Write-Debug "-- UTC Time --"
Write-Debug "Year: " + string(loo_Dt.Year)
Write-Debug "Month: " + string(loo_Dt.Month)
Write-Debug "Day: " + string(loo_Dt.Day)
Write-Debug "Hour: " + string(loo_Dt.Hour)
Write-Debug "Minutes: " + string(loo_Dt.Minute)
Write-Debug "Seconds: " + string(loo_Dt.Second)
destroy loo_DateTime
destroy loo_Dt