perl - XML::Twig and save order of attributes -



perl - XML::Twig and save order of attributes -

i editing xml files using xml::twig below code :

my $twig = xml::twig->new( pretty_print => 'indented', twig_handlers => { vendor => sub { $_->set_att( 'id' => $_->{'att'}->{'att1'} ); $_->set_att( 'id' => $_->{'att'}->{'att2'} ); $_->set_att( 'id' => $_->{'att'}->{'att3'} ); $_->set_att( 'id' => $_->{'att'}->{'att4'} ); }, }, ); $twig->parsefile('myfile'); $twig->flush;

the problem code not save xml attributes in same order in edited file.

for illustration line input xml :

<device overwrite="true" string="true" block="false">

is replaced line in output xml :

<device block="false" string="true" overwrite="true">

how can save attributes in same order original file if compare 2 files revision system, see changes made?

are sure order block, string, overwrite? bit surprising.

to reply question: seek installing tie::ixhash , using keep_atts-order alternative when create twig. should it.

i not sure why need though: order shouldn't matter (proper) xml processor. if need version control, have @ cvs value pretty_print option, designed play nice line-oriented tools.

xml perl xml-twig

Comments

Popular posts from this blog

php - Edges appear in image after resizing -

ios8 - iOS custom keyboard - preserve state between appearances -

Delphi change the assembly code of a running process -