Perl
Chilkat2 Perl
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 Perl Downloads
use strict;
use warnings;
use Chilkat2;
my $strJsonArray = '[{"name":"jack"},{"name":"john"},{"name":"joe"}]';
my $strJsonObject = '{"pets":[{"name":"jack"},{"name":"john"},{"name":"joe"}]}';
# A JSON array must be loaded using JsonArray:
my $jsonArray = Chilkat2::JsonArray->new;
$jsonArray->Load($strJsonArray);
# Examine the values:
my $i = 0;
while ($i < $jsonArray->Size) {
my $jsonObj = $jsonArray->ObjectAt($i);
print $i, ': ', $jsonObj->StringOf('name'), "\n";
$i = $i + 1;
}
# Output is:
# 0: jack
# 1: john
# 2: joe
# A JSON object must be loaded using JsonObject
my $jsonObject = Chilkat2::JsonObject->new;
$jsonObject->Load($strJsonObject);
# Examine the values:
$i = 0;
my $numPets = $jsonObject->SizeOfArray('pets');
while ($i < $numPets) {
$jsonObject->I($i);
print $i, ': ', $jsonObject->StringOf('pets[i].name'), "\n";
$i = $i + 1;
}
# Output is:
# 0: jack
# 1: john
# 2: joe