Go
Go
Loading and Parsing a JSON Array
See more JSON Examples
A JSON array is JSON that begins with "[" and ends with "]". For example, this is a JSON array that contains 3 JSON objects.
[{"name":"jack"},{"name":"john"},{"name":"joe"}]
A JSON object, however, is JSON that begins with "{" and ends with "}". For example, this JSON is an object that contains an array.
{"pets":[{"name":"jack"},{"name":"john"},{"name":"joe"}]}
This example shows how loading a JSON array is different than loading a JSON object.
Chilkat Go Downloads
strJsonArray := "[{\"name\":\"jack\"},{\"name\":\"john\"},{\"name\":\"joe\"}]"
strJsonObject := "{\"pets\":[{\"name\":\"jack\"},{\"name\":\"john\"},{\"name\":\"joe\"}]}"
// A JSON array must be loaded using JsonArray:
jsonArray := chilkat.NewJsonArray()
jsonArray.Load(strJsonArray)
// Examine the values:
i := 0
for i < jsonArray.Size() {
jsonObj := jsonArray.ObjectAt(i)
fmt.Println(i, ": ", *jsonObj.StringOf("name"))
jsonObj.DisposeJsonObject()
i = i + 1
}
// Output is:
// 0: jack
// 1: john
// 2: joe
// A JSON object must be loaded using JsonObject
jsonObject := chilkat.NewJsonObject()
jsonObject.Load(strJsonObject)
// Examine the values:
i = 0
numPets := jsonObject.SizeOfArray("pets")
for i < numPets {
jsonObject.SetI(i)
fmt.Println(i, ": ", *jsonObject.StringOf("pets[i].name"))
i = i + 1
}
// Output is:
// 0: jack
// 1: john
// 2: joe
jsonArray.DisposeJsonArray()
jsonObject.DisposeJsonObject()