1

perlのlibXMLのsetDataメソッドに問題があります。これが私のコードスニペットです:

    print "\ nクエリ:"、$ query、 "\ n"; #Query
    my($ excactNode)= $ doc-> findnodes($ query); #データを変更する必要があるノードを見つける
    print "\ n Data:"、$ excactNode-> setData($ finalString)、 "\ n"; #データの設定

setDataを使用した後、getDataを使用して値を取得しました。getDataによって出力される値は最新のものですが、このデータを設定する必要があるxmlを開くと。値は古いです。

私が間違っていることを教えてください。

4

1 に答える 1

3

私はLibXMLにあまり精通していませんが、setDataは何も返さないように文書化されています。おそらく、呼び出してからsetData()個別に取得する必要があります。

また、LibXMLが変更を保存するとは思わない。おそらく、変更したXMLドキュメントを明示的に保存する必要がありますtoFileXML :: LibXML::Documentを参照してください。

于 2012-02-12T23:57:04.303 に答える