(PureBasic) Load JSON Data at Path
Demonstrates how to load JSON data into a path within a JSON database. For example,
we begin with this JSON:
{
"a": 1,
"b": 2,
"c": {
"x": 1,
"y": 2
}
}
Then we load {"mm": 11, "nn": 22} to "c", and the result is this JSON:
{
"a": 1,
"b": 2,
"c": {
"mm": 11,
"nn": 22
}
}
IncludeFile "CkJsonObject.pb"
Procedure ChilkatExample()
; Demonstrates how to load replace the data at a location within a JSON database.
p.s = "{" + Chr(34) + "a" + Chr(34) + ": 1, " + Chr(34) + "b" + Chr(34) + ": 2, " + Chr(34) + "c" + Chr(34) + ": { " + Chr(34) + "x" + Chr(34) + ": 1, " + Chr(34) + "y" + Chr(34) + ": 2 } }"
json.i = CkJsonObject::ckCreate()
If json.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkJsonObject::ckLoad(json,p)
CkJsonObject::setCkEmitCompact(json, 0)
Debug CkJsonObject::ckEmit(json)
q.s = "{" + Chr(34) + "mm" + Chr(34) + ": 11, " + Chr(34) + "nn" + Chr(34) + ": 22}"
c.i = CkJsonObject::ckObjectOf(json,"c")
CkJsonObject::ckLoad(c,q)
CkJsonObject::ckDispose(c)
; See that x and y are replaced with mm and nn.
Debug CkJsonObject::ckEmit(json)
CkJsonObject::ckDispose(json)
ProcedureReturn
EndProcedure
|