Sample code for 30+ languages & platforms
Tcl

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

Tcl

load ./chilkat.dll

set success 0

# Parse Microsoft JSON Dates (AJAX Dates)
set json [new_CkJsonObject]

set success [CkJsonObject_Load $json "{ \"AchievementDate\":\"/Date(1540229468330-0500)/\"}"]

set dt [new_CkDateTime]

set success [CkJsonObject_DateOf $json "AchievementDate" $dt]
if {$success != 1} then {
    puts "Unable to parse a date/time."
    delete_CkJsonObject $json
    delete_CkDateTime $dt
    exit
}

# Show the date in different formats:
set bLocal 1
puts "RFC822: [CkDateTime_getAsRfc822 $dt $bLocal]"
puts "Timestamp: [CkDateTime_getAsTimestamp $dt $bLocal]"
puts "YYYY-MM-DD: [CkDateTime_getAsIso8601 $dt YYYY-MM-DD $bLocal]"

# Get integer values for year, month, day, etc.
set dtObj [new_CkDtObj]

CkDateTime_ToDtObj $dt $bLocal $dtObj

puts "year: [CkDtObj_get_Year $dtObj]"
puts "month: [CkDtObj_get_Month $dtObj]"
puts "day: [CkDtObj_get_Day $dtObj]"
puts "hour: [CkDtObj_get_Hour $dtObj]"
puts "minute: [CkDtObj_get_Minute $dtObj]"
puts "seconds: [CkDtObj_get_Second $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

delete_CkJsonObject $json
delete_CkDateTime $dt
delete_CkDtObj $dtObj