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.