Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(MFC) 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 } ] }
#include <CkJsonObject.h> #include <CkJsonArray.h> void ChilkatSample(void) { CkString strOut; CkJsonObject json; bool success; // 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. int index = -1; success = json.AddStringAt(-1,"Title","The Cuckoo's Calling"); success = json.AddStringAt(-1,"Author","Robert Galbraith"); success = json.AddStringAt(-1,"Genre","classic crime novel"); // Let's create the Detail JSON object: success = json.AddObjectAt(-1,"Detail"); CkJsonObject *detail = json.ObjectAt(json.get_Size() - 1); success = detail->AddStringAt(-1,"Publisher","Little Brown"); success = detail->AddIntAt(-1,"Publication_Year",2013); success = detail->AddNumberAt(-1,"ISBN-13","9781408704004"); success = detail->AddStringAt(-1,"Language","English"); success = detail->AddIntAt(-1,"Pages",494); delete detail; // Add the array for Price success = json.AddArrayAt(-1,"Price"); CkJsonArray *aPrice = json.ArrayAt(json.get_Size() - 1); // Entry entry in aPrice will be a JSON object. // Append a new/empty ojbect to the end of the aPrice array. success = aPrice->AddObjectAt(-1); // Get the object that was just appended. CkJsonObject *priceObj = aPrice->ObjectAt(aPrice->get_Size() - 1); success = priceObj->AddStringAt(-1,"type","Hardcover"); success = priceObj->AddNumberAt(-1,"price","16.65"); delete priceObj; success = aPrice->AddObjectAt(-1); priceObj = aPrice->ObjectAt(aPrice->get_Size() - 1); success = priceObj->AddStringAt(-1,"type","Kindle Edition"); success = priceObj->AddNumberAt(-1,"price","7.00"); delete priceObj; delete aPrice; json.put_EmitCompact(false); strOut.append(json.emit()); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); } |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.