Dart
Dart
JSON: Nested Array
See more JSON Examples
Here we have a JSON object that contains nested arrays. This example demonstrates how to access the contents of the nested arrays.
{
"numbers" : [
["even", 2, 4, 6, 8],
["prime", 2, 3, 5, 7, 11, 13]
] }
Chilkat Dart Downloads
import 'package:chilkat/chilkat.dart';
void main() {
final json = CkJsonObject();
// This is the above JSON with whitespace chars removed (SPACE, TAB, CR, and LF chars).
// The presence of whitespace chars for pretty-printing makes no difference to the Load
// method.
final jsonStr = '{ "numbers" : [ ["even", 2, 4, 6, 8], ["prime", 2, 3, 5, 7, 11, 13] ] }';
try {
json.load(jsonStr);
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
// Get the value of the "numbers" object, which is an array that contains JSON arrays.
final CkJsonArray outerArray;
try {
outerArray = json.arrayOf('numbers');
} on ChilkatException {
print('numbers array not found.');
return;
}
final numArrays = outerArray.size;
for (var i = 0; i < numArrays; i++) {
final innerArray = outerArray.arrayAt(i);
// The first item in the innerArray is a string
print('${innerArray.stringAt(0)}:');
final numInnerItems = innerArray.size;
for (var j = 1; j < numInnerItems; j++) {
print(' ${innerArray.intAt(j)}');
}
}
}