Hola de nuevo, he hecho el script con XML::Twig y solo puedo decir que es muuuuyyy bueno!. Excelente!, Justo lo que necesitaba. Por otro lado me esta sucediendo algo que quiza se trata de algo que estoy haciendo mal, quisiera hacer las modificaciones al archivo y escribirlas en el mismo archivo una vez que termine, entonces he visto la funcion parsefile_inplace pero si parseo el archivo de esa manera al final el archivo queda en blanco, estoy haciendo algo mal? (seguro :P).
Este es el codigo que he escrito hasta el momento http://pastebin.com/mzN7AxQH en este caso no estoy usando parsefile_input y se que hay cosas que se pueden hacer de manera distinta y quiza mas corta pero como estoy aprendiendo a usar el modulo lo he hecho asi. Para resumir un poco la duda : si utilizo parsefile_inplace cuando termino el parseo el archivo queda en blanco. Muchas gracias a todos de nuevo por los comentarios y por orientarme, muy buen dia :D 2011/4/27 Francisco Rivas <[email protected]> > Justo en esto estoy! :D > > 2011/4/27 Javier Camuñas <[email protected]> > >> - Si es grande el xml a parsear XML::Simple te dejará prácticamente sin >> RAM. >> - Usaría ForceArray en caso de Simple >> - Prueba XML::Twig >> >> un saludo >> >> 2011/4/27 Francisco Rivas <[email protected]> >> >>> Hola *, >>> >>> Quiero hacer un script para modificar un XML y he encontrado varios >>> modulos en el CPAN que lo hacen XML::LibXML y XML::Simple por ejemplo. El >>> detalle es que la forma del XML que tengo es biiiienn extrana :P, puesto que >>> tiene varios niveles. Entonces lo que quiero hacer con el XML es quitarle >>> algunos elementos y modificar otros. Estoy utilizando por el momento >>> XML::Simple, soy bastante novato en Perl y por eso recurro a la lista. >>> >>> #!/usr/bin/perl >>> >>> use strict; >>> use warnings; >>> >>> use XML::Simple; >>> use Data::Dumper; >>> $Data::Dumper::Indent = 3; >>> >>> my $fh = 'BookatableWid_asset.xml'; >>> my $tree = XMLin($fh); >>> delete $tree->{protocolVersion}; >>> print Dumper($tree); >>> >>> En esto que llevo hecho, que es una tonteria al final, solo elimino una >>> de las 'keys' que me interesa. >>> >>> El detalle esta en que luego hay hash de hashes de hashes dentro del XML. >>> Miren http://pastebin.com/muT2zH9E >>> >>> Entonces necesito iterar en esa estructura para buscar las 'keys' que >>> quiero modificar o eliminar incluso. >>> >>> Algunas recomendacion?. usar otro modulo?, utilizar ForceArray o >>> ForceContent, GroupTags o algo asi? >>> >>> Gracias de antemano. Muy buena tarde. :D >>> >>> _______________________________________________ >>> Madrid-pm mailing list >>> [email protected] >>> http://mail.pm.org/mailman/listinfo/madrid-pm >>> >> >> >> _______________________________________________ >> Madrid-pm mailing list >> [email protected] >> http://mail.pm.org/mailman/listinfo/madrid-pm >> > >
_______________________________________________ Madrid-pm mailing list [email protected] http://mail.pm.org/mailman/listinfo/madrid-pm
