2014-05-13 36 views
3

一個XML標記的價值讓我們假設我的XML文件是這樣的:如何改變使用Perl

<? xml version="1.0" encoding="iso-8859-1" ?> 
    <Body> 
    <RequiredTag> 
     #VALUE# 
    </RequiredTag> 
    </Body> 

我怎樣才能改變使用Perl所需的變量的值?

例如爲:

$XmlHandle->{XML}->{Body}->{RequiredTag} = "RequiredValue"; 

回答

6

隨着XML ::嫩枝::

#!/usr/bin/perl 

use strict; 
use warnings; 

use XML::Twig; 

XML::Twig->new(twig_handlers => 
        { RequiredTag => sub { $_->set_text('RequiredValue') } }, 
       pretty_print => 'indented', 
      ) 
     ->parsefile('my_file.xml') 
     ->print; 
+0

1.櫃面我們這是在不同的父標籤嵌套多個 「RequiredTag」。我們如何區分? 2.並且,修改後如何保存xml文件? – user3603649

+1

查看文檔; - )您可以在處理程序觸發器中使用更復雜的表達式,例如'Body/RequiredTag'或'/ XML/Body/RequiredTag';而不是'print',你可以使用'print_to_file('updated.xml')' – mirod

+0

print_to_file(FILE)將保存文件一旦我關閉了我的Tkx應用程序。我們可以保存文件動態並重新加載,因爲我的Tkx應用程序仍在運行? – user3603649