我有一个很大的xml,我想替换其中一个节点的属性。我有一个代码来替换给定节点的属性值,但它不写入磁盘。我不知道我应该如何将这些更改传播到磁盘?替换XML内容并写入磁盘
对于例如:example.1.xml
<chairman name="abc" >
<vicechairman name="def">
<employee name="ghi" salary="123" designation="xyz"/>
</vicechairman>
</chairman>
在上面的例子中,我想改变雇员的节点的值与“薪水=” 123“”属性为“薪水=” 456“”使得上面的XML改变:
<chairman name="abc" >
<vicechairman name="def">
<employee name="ghi" salary="456" designation="xyz"/>
</vicechairman>
</chairman>
我已经下面的代码段,其获取到的“雇员”节点之后改变属性值设置为“薪水= 456”,但不写入到磁盘:
foreach my $anode (@attributes){
my $attr = $anode->nodeName;
if($attr eq "salary"){
$anode->setValue("456");
}
}
任何帮助将被赞赏。由于
这会复制我的整个XML内容仅改变属性值中的一个?我不知道这将如何工作? – user640232
任何不使用$ doc-> toFile的理由? – Zaid
任何输出方法都可以工作,Zaid。只是想列出两个选项。 – Miller