Я поставляю свой скрипт с файлом данных JSON. Затем я декодировал данные JSON, используя decode_json ...
open my $fh, '<:encoding(UTF-8)', $file ir die;
my $jsondata = do {local $/; <$fh> };
my $data = decode_json($jsondata);
#print Dumper $data
#I am trying to write a foreach loop in here to pull particular bits of
#the information out that I want to display (as detailed further below)
close $fh;
Выход Dumper выглядит следующим образом ...
$VAR1 = [
{
'DataName' => 'FileOfPetsAcrossTheWorld',
'Information001' => [
{
'Name' => Steve,
'Sex' => 'Male',
'Age' => 24,
'Animals' => [
'Dog',
'Cat',
'Hamster',
'Parrot
],
'Location' => 'London',
},
{
'Name' => Dave,
'Sex' => 'Male',
'Age' => 59,
'Animals' => [
'Fish',
'Horse',
'Budgie',
],
'Location' => 'Paris',
},
{
'Name' => Sandra,
'Sex' => 'Female',
'Age' => 44,
'Animals' => [
'Snake',
'Crocodile',
'Flamingo',
],
'Location' => 'Syndey',
}
]
}
];
Я пытаюсь получить выходные данные из этой структуры данных, используя внешний вид, чтобы я мог распечатать выходные данные ...
Dataname: FileOfPetsAcrossTheWorld
Name: Steve
Animals: Dog, Cat, Parrot, Hamster
Location: London
Name: Dave
Animals: Fish, Horse, Budgie
Location: Paris
Name: Sandra
Animals: Snake, Crocodile, Flamingo
Location: Sydey
Я пробовал различные циклы foreach и хеш-ссылки, ссылающиеся на фрагменты кода из онлайн-источников (и некоторые из них, которые я использовал и работал ранее), чтобы перебирать и извлекать данные из хэшей и т. Д., Но я не могу заставить их работать в этом дело. Среди прочих ошибок я получаю такие сообщения, как «Не ссылка на HASH в ...».
Какой правильный метод я должен использовать, чтобы извлечь эту информацию из структуры данных такого типа?