Sample code for 30+ languages & platforms
PureBasic

JSON: Renaming and Deleting Members

See more JSON Examples

Demonstrates renaming and deleting members. This example uses the following JSON document:
{
   "apple": "red",
   "lime": "green",
   "banana": "yellow",
   "broccoli": "green",
   "strawberry": "red"
}

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkJsonObject.pb"

Procedure ChilkatExample()

    success.i = 0

    json.i = CkJsonObject::ckCreate()
    If json.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    success = CkJsonObject::ckLoad(json,"{" + Chr(34) + "apple" + Chr(34) + ": " + Chr(34) + "red" + Chr(34) + "," + Chr(34) + "lime" + Chr(34) + ": " + Chr(34) + "green" + Chr(34) + "," + Chr(34) + "banana" + Chr(34) + ": " + Chr(34) + "yellow" + Chr(34) + "," + Chr(34) + "broccoli" + Chr(34) + ": " + Chr(34) + "green" + Chr(34) + "," + Chr(34) + "strawberry" + Chr(34) + ": " + Chr(34) + "red" + Chr(34) + "}")
    If success <> 1
        Debug CkJsonObject::ckLastErrorText(json)
        CkJsonObject::ckDispose(json)
        ProcedureReturn
    EndIf

    ; Rename "lime" to "lemon".
    success = CkJsonObject::ckRename(json,"lime","lemon")
    ; Change the color to yellow:
    success = CkJsonObject::ckSetStringOf(json,"lemon","yellow")

    ; Rename by index.  Banana is at index 2 (apple is at index 0)
    success = CkJsonObject::ckRenameAt(json,2,"bartlett_pear")

    ; Delete broccoli by name
    success = CkJsonObject::ckDelete(json,"broccoli")

    ; Delete apple by index.  Apple is at index 0.
    success = CkJsonObject::ckDeleteAt(json,0)

    CkJsonObject::setCkEmitCompact(json, 0)
    Debug CkJsonObject::ckEmit(json)


    CkJsonObject::ckDispose(json)


    ProcedureReturn
EndProcedure