Я попытался изменить name
поле в файле XML с помощью этой программыКак изменить файл XML с помощью Perl и XML :: Twig
use XML::Twig;
open(OUT, ">resutl.xml") or die "cannot open out file main_file:$!";
my $twig = XML::Twig->new(
pretty_print => 'indented',
twig_handlers => {
association => sub {
$_->findnodes('div');
$_->set_att(name => 'xxx');
},
},
);
$twig->parsefile('in.xml');
$twig->flush(\*OUT);
<div
name="test1"
booktype="book1"
price="e200"
/>
<div
name="test2"
booktype="book2"
price="100" />
Когда я исполню Perl сценарий он печатает ошибку
junk after document element at line 6, column 0, byte 65 at C:/Perl64/lib/XML/Parser.pm line 187.
at C:\Users\admin\Desktop\parse.pl line 14.
Я попытался привести в порядок свой пост немного, но я не понимаю, XML-фрагмент, который сразу же следует за кодом Perl. Есть два пустых элемента 'div' без корневого элемента, поэтому он не является корректным XML. Не могли бы вы показать что-то ближе к реальной проблеме? – Borodin
Разумеется, вы всегда должны * использовать '' strict '' и 'использовать предупреждения' в начале каждой программы Perl, особенно если вы просите о помощи с кодом – Borodin