2012-02-12 43 views
1

我在perl中遇到libXML的setData方法問題。這裏是我的代碼片段:在perl中使用libXML的setData()方法後,數據沒有寫出到實際的xml文件中

 
    print "\n Query: " , $query, "\n"; #Query 
    my($exactNode) = $doc->findnodes($query); #Finding the nodes who data needs to change 
    print "\n Data: ", $exactNode->setData($finalString), "\n"; #Setting the data 

使用setData我用getData檢索值。由getData輸出的值是最新的,但是當我打開xml時應該設置這個數據。價值是舊的。

請告知我做錯了什麼。

感謝您提前給予幫助。在這裏輸入代碼

+0

提供整個程序。 – daxim 2012-02-12 22:50:06

回答

2

我不太熟悉LibXML,但setData被記錄爲不返回任何內容。您可能需要撥打setData(),然後單獨檢索。

我也不相信LibXML會爲你保存更改。您可能必須明確地保存修改的XML文檔,可能需要使用toFile。請參閱XML::LibXML::Document

+0

謝謝你的回覆。 – user1205675 2012-02-13 04:11:30

+0

是的它的工作。我使用print $ doc-> toString並將所有更改打印到主屏幕上。然後使用>運算符,將更改保存在新文件中,而不是輸入文件。 – user1205675 2012-02-13 04:12:27

相關問題