我正在使用XML::Simple包来导入 XML 文件并更改一些子标签的一些属性。当数据被转储时,更改是可见的:
print Dumper($data);
但是如何将这些编辑后的数据写入新的 XML 文件中呢?我确实浏览了 CPAN 页面,但是有关此的一些代码确实会有所帮助。
我正在使用XML::Simple包来导入 XML 文件并更改一些子标签的一些属性。当数据被转储时,更改是可见的:
print Dumper($data);
但是如何将这些编辑后的数据写入新的 XML 文件中呢?我确实浏览了 CPAN 页面,但是有关此的一些代码确实会有所帮助。
my $ref = XMLin(...);
# ...
open my $fh, ">", $path or die "$0: open $path: $!";
print $fh XMLout($ref);
close $fh or warn "$0: close $path: $!";
使用XMLout
带有OutputFile
选项的方法。这是一个示例(名称已更改以保护无辜者:):
use strict;
use warnings;
use XML::Simple;
my $href = {
'dir' => '/tmp/foo/',
'file' => '/tmp/foo.debug',
'abc' => {
'boo' => {
'num' => '55',
'name' => 'bill',
},
'goo' => {
'num' => '42',
'name' => 'mike',
},
}
};
my $xml = XMLout($href, OutputFile => 'out.xml');
__END__
The contents of the file 'out.xml' are:
<opt dir="/tmp/foo/" file="/tmp/foo.debug">
<abc name="bill" num="55" />
<abc name="mike" num="42" />
</opt>