Sample code for 30+ languages & platforms
Unicode C++

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 Unicode C++ Downloads

Unicode C++
#include <CkJsonObjectW.h>
#include <CkDateTimeW.h>
#include <CkDtObjW.h>

void ChilkatSample(void)
    {
    bool success = false;

    // Parse Microsoft JSON Dates (AJAX Dates)
    CkJsonObjectW json;

    success = json.Load(L"{ \"AchievementDate\":\"/Date(1540229468330-0500)/\"}");

    CkDateTimeW dt;
    success = json.DateOf(L"AchievementDate",dt);
    if (success != true) {
        wprintf(L"Unable to parse a date/time.\n");
        return;
    }

    // Show the date in different formats:
    bool bLocal = true;
    wprintf(L"RFC822: %s\n",dt.getAsRfc822(bLocal));
    wprintf(L"Timestamp: %s\n",dt.getAsTimestamp(bLocal));
    wprintf(L"YYYY-MM-DD: %s\n",dt.getAsIso8601(L"YYYY-MM-DD",bLocal));

    // Get integer values for year, month, day, etc.
    CkDtObjW dtObj;
    dt.ToDtObj(bLocal,dtObj);

    wprintf(L"year: %d\n",dtObj.get_Year());
    wprintf(L"month: %d\n",dtObj.get_Month());
    wprintf(L"day: %d\n",dtObj.get_Day());
    wprintf(L"hour: %d\n",dtObj.get_Hour());
    wprintf(L"minute: %d\n",dtObj.get_Minute());
    wprintf(L"seconds: %d\n",dtObj.get_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
    }