#!/usr/bin/perl use strict; use warnings; use XML::Simple; my $parser = XML::Simple->new( KeepRoot => 1 ); # Création du fichier résultat my $FichierResulat = 'resultat.txt'; open( my $FhResultat, '>', $FichierResulat ) or die("Impossible d'ouvrir le fichier $FichierResulat\n$!"); my $doc = $parser->XMLin('compute_sys.xml'); # Tout le fichier XML est dans $doc sous forme d'arbre foreach my $Catalog (@{ $doc -> {Catalog}->{name}}){ print {$FhResultat} ""; print {$FhResultat} str_if ($Catalog->{name}); print {$FhResultat} ""; print {$FhResultat} str_if ($Catalog->{value}); } close($FhResultat); sub is_array { my ($var) = @_; return ( ref($var) eq 'ARRAY' ); } sub str_if { my ( $str, $default ) = @_; return $default unless $str; return $str; }