После использования метода setData () LibXML в perl данные не записываются в фактический xml-файл - PullRequest
1 голос
/ 13 февраля 2012

У меня проблема с методом setData libXML в perl. Вот мой фрагмент кода:

    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, где эти данные должны быть установлены. Ценность старая.

Пожалуйста, сообщите, что я делаю не так.

1 Ответ

3 голосов
/ 13 февраля 2012

Я не слишком знаком с LibXML, но задокументировано, что setData ничего не возвращает. Вам, вероятно, придется позвонить setData(), а затем получить его отдельно.

Я также не верю, что LibXML сохранит изменения для вас. Скорее всего, вам придется явно сохранить измененный XML-документ, возможно, с toFile. См. XML :: LibXML :: Document .

...