![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Unicode C) Create more Complex JSON DocumentSample code to create the following JSON document: { "Title": "The Cuckoo's Calling", "Author": "Robert Galbraith", "Genre": "classic crime novel", "Detail": { "Publisher": "Little Brown", "Publication_Year": 2013, "ISBN-13": 9781408704004, "Language": "English", "Pages": 494 }, "Price": [ { "type": "Hardcover", "price": 16.65 }, { "type": "Kindle Edition", "price": 7.00 } ] } Note: This example requires Chilkat v11.1.0 or greater.
#include <C_CkJsonObjectW.h> #include <C_CkJsonArrayW.h> void ChilkatSample(void) { BOOL success; HCkJsonObjectW json; int index; HCkJsonObjectW detail; HCkJsonArrayW aPrice; HCkJsonObjectW priceObj; success = FALSE; json = CkJsonObjectW_Create(); // The only reason for failure in the following lines of code would be an out-of-memory condition.. // An index value of -1 is used to append at the end. index = -1; success = CkJsonObjectW_AddStringAt(json,-1,L"Title",L"The Cuckoo's Calling"); success = CkJsonObjectW_AddStringAt(json,-1,L"Author",L"Robert Galbraith"); success = CkJsonObjectW_AddStringAt(json,-1,L"Genre",L"classic crime novel"); // Let's create the Detail JSON object: detail = CkJsonObjectW_Create(); CkJsonObjectW_AppendObject2(json,L"Detail",detail); success = CkJsonObjectW_AddStringAt(detail,-1,L"Publisher",L"Little Brown"); success = CkJsonObjectW_AddIntAt(detail,-1,L"Publication_Year",2013); success = CkJsonObjectW_AddNumberAt(detail,-1,L"ISBN-13",L"9781408704004"); success = CkJsonObjectW_AddStringAt(detail,-1,L"Language",L"English"); success = CkJsonObjectW_AddIntAt(detail,-1,L"Pages",494); // Add the array for Price aPrice = CkJsonArrayW_Create(); CkJsonObjectW_AppendArray2(json,L"Price",aPrice); // Entry in aPrice will be a JSON object. // Append a new/empty ojbect to the end of the aPrice array. priceObj = CkJsonObjectW_Create(); CkJsonArrayW_AddObjectAt2(aPrice,-1,priceObj); success = CkJsonObjectW_AddStringAt(priceObj,-1,L"type",L"Hardcover"); success = CkJsonObjectW_AddNumberAt(priceObj,-1,L"price",L"16.65"); CkJsonArrayW_AddObjectAt2(aPrice,-1,priceObj); success = CkJsonObjectW_AddStringAt(priceObj,-1,L"type",L"Kindle Edition"); success = CkJsonObjectW_AddNumberAt(priceObj,-1,L"price",L"7.00"); CkJsonObjectW_putEmitCompact(json,FALSE); wprintf(L"%s\n",CkJsonObjectW_emit(json)); CkJsonObjectW_Dispose(json); CkJsonObjectW_Dispose(detail); CkJsonArrayW_Dispose(aPrice); CkJsonObjectW_Dispose(priceObj); } |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.