Ajouter des balises dans un fichier XML [PERL] - Perl - Programmation
Marsh Posté le 05-04-2007 à 18:04:58
si tu connais le motif de tes balises alors tu pourrais bien l'ouvrir et faire une expression reguliere qui effectue les ajouts la ou le motif est trouvé
par exemple
Code :
|
Marsh Posté le 21-01-2007 à 12:01:00
Bonjour tt le monde,
Je viens de me mettre au XML avec Perl. J'aimerais ajouter des balises ds un fichier XML (j'utilise LibXML mais ca marche pas ) Quelle librairie me conseillez-vous ?
Voici mon bout de code :
...
$xml = XML::LibXML->new();
$data = $xml->parse_file($adr_indexfile);
$moteur = $data->getDocumentElement(); //element <moteur>
$mots = $moteur->getFirstChild(); //element <mots> qui contient des elements <motcle>
my $motcle = $data->createElement('motcle');
$motcle->setAttribute('nom', $mot);
$mots->appendChild($motcle);
my $url = $data->createElement('urls');
$motcle->appendChild($url);
my $lien = $data->createElement('lien');
$lien->setAttribute('valeururl', $ARGV[2]);
$url->appendChild($lien);
my $pond = $data->createElement('ponderation');
my $text = XML::LibXML::Text->new($ponderation);
$pond->appendChild($text);
print Dumper($data);
Je veux ajouter :
<motcle nom="toto">
<urls>
<lien valeururl = "...">
<ponderation>1</ponderation>
</lien>
</urls>
</motcle>
Mais le print me rend :
$VAR1 = bless( do{\(my $o = 148458496)}, 'XML::LibXML::document' );
Et mon fichier n'est pas modifié.
Ya-t-il une meilleure librairie ? Comment ajouter une nouvelle balise <motcle...> à la suite des autres motclés ?
Please aidez-moi !
Merci d'avance.