B4X
B4X
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 B4X Downloads
Dim strJsonArray As String = "[{" & Chr(34) & "name" & Chr(34) & ":" & Chr(34) & "jack" & Chr(34) & "},{" & Chr(34) & "name" & Chr(34) & ":" & Chr(34) & "john" & Chr(34) & "},{" & Chr(34) & "name" & Chr(34) & ":" & Chr(34) & "joe" & Chr(34) & "}]"
Dim strJsonObject As String = "{" & Chr(34) & "pets" & Chr(34) & ":[{" & Chr(34) & "name" & Chr(34) & ":" & Chr(34) & "jack" & Chr(34) & "},{" & Chr(34) & "name" & Chr(34) & ":" & Chr(34) & "john" & Chr(34) & "},{" & Chr(34) & "name" & Chr(34) & ":" & Chr(34) & "joe" & Chr(34) & "}]}"
' A JSON array must be loaded using JsonArray:
Dim jsonArray As ChilkatJsonArray
jsonArray.Initialize
jsonArray.Load(strJsonArray)
' Examine the values:
Dim i As Int = 0
Do While i < jsonArray.Size
Dim jsonObj As ChilkatJsonObject = jsonArray.ObjectAt(i)
Log(i & ": " & jsonObj.StringOf("name"))
i = i + 1
Loop
' Output is:
' 0: jack
' 1: john
' 2: joe
' A JSON object must be loaded using JsonObject
Dim jsonObject As ChilkatJsonObject
jsonObject.Initialize
jsonObject.Load(strJsonObject)
' Examine the values:
i = 0
Dim numPets As Int = jsonObject.SizeOfArray("pets")
Do While i < numPets
jsonObject.I = i
Log(i & ": " & jsonObject.StringOf("pets[i].name"))
i = i + 1
Loop
' Output is:
' 0: jack
' 1: john
' 2: joe