Sample code for 30+ languages & platforms
Go

Sort JSON Object by Member Key Name

See more JSON Examples

Demonstrates how to sort the members of a JSON object by the key name.

Chilkat Go Downloads

Go
    json := chilkat.NewJsonObject()

    json.UpdateString("xyz","1234")
    json.UpdateString("abc.xyz","1234")
    json.UpdateString("abc.def","1234")
    json.UpdateString("abc.aaa","1234")
    json.UpdateString("ghi","1234")
    json.UpdateString("nmo","1234")

    json.SetEmitCompact(false)
    fmt.Println(*json.Emit())

    // This is our initial JSON:

    // {
    //   "xyz": "1234",
    //   "abc": {
    //     "xyz": "1234",
    //     "def": "1234",
    //     "aaa": "1234"
    //   },
    //   "ghi": "1234",
    //   "nmo": "1234"
    // }

    // Sort the top-level JSON object by key.
    ascending := true
    caseSensitive := true
    json.Sort(ascending,caseSensitive)

    // Look at the sorted JSON..
    fmt.Println(*json.Emit())

    // {
    //   "abc": {
    //     "xyz": "1234",
    //     "def": "1234",
    //     "aaa": "1234"
    //   },
    //   "ghi": "1234",
    //   "nmo": "1234",
    //   "xyz": "1234"
    // }

    // Now sort the members of the "abc" object..
    jsonAbc := chilkat.NewJsonObject()
    json.ObjectOf2("abc",jsonAbc)

    jsonAbc.Sort(ascending,caseSensitive)

    // Now look at the JSON with the members under "abc" also sorted..
    fmt.Println(*json.Emit())

    // {
    //   "abc": {
    //     "aaa": "1234",
    //     "def": "1234",
    //     "xyz": "1234"
    //   },
    //   "ghi": "1234",
    //   "nmo": "1234",
    //   "xyz": "1234"
    // }

    json.DisposeJsonObject()
    jsonAbc.DisposeJsonObject()