Je suis en train d'analyser le fichier XML et d'essayer d'accéder aux valeurs dans le fichier XML.Comment puis-je extraire des valeurs enfants à partir de XML avec XML :: Twig de Perl?
fichier XML exemple#!/usr/bin/perl -w
use strict;
use XML::Twig;
my $file = 'files/camelids.xml';
print "File :: $file\n";
my $twig = XML::Twig->new();
$twig->parsefile($file);
# print "twig :: $twig\n";
my $root = $twig->root;
# print "root :: $root\n";
my $num = $root->children('species');
print "num :: $num\n\n\n";
print $root->children('species')->first_child_text('common-name');
est:
<?xml version="1.0"?>
<camelids>
<species name="Camelus bactrianus">
<common-name>Bactrian Camel</common-name>
<physical-characteristics>
<mass>450 to 500 kg.</mass>
<appearance>
<in-appearance>
<inside-appearance>This is in inside appearance</inside-appearance>
</in-appearance>
</appearance>
</physical-characteristics>
</species>
</camelids>
sortie est:
File :: files/camelids.xml
num :: 1
Can't call method "first_child_text" without a package or object reference at xml-twig_read.pl line 19.
Comment résoudre ce problème?
Y at-il quelque chose de mal dans cette ligne de code et toute modification nécessaire (ici, je suis en train d'obtenir le common-name
comme Bactrian Camel
)
print $root->children('species')->first_child_text('common-name');