如何在C中使用libxml2修改xml文件并保存更改?

时间:2016-01-27 05:30:44

标签: c linux libxml2

实际的xml文件中未更新该值。如何在xml文件中更新更改?感谢。

xmlTextReader *xmlReaderPtr = NULL;
xmlNodePtr curNode;

xmlReaderPtr = xmlReaderForFd(fd, NULL, NULL, XML_PARSE_NOBLANKS);
curNode      = xmlTextReaderCurrentNode(xmlReaderPtr);
xmlNodeSetContent(curNode, "value");

1 个答案:

答案 0 :(得分:0)

使用 xmlreader 等流媒体API,您只能解析文档。如果要修改和编写文档,请使用" normal"非流式API将整个文档(xmlDoc)读入内存(使用xmlParseFilexmlReadFile等),进行必要的更改,然后使用{{3}编写文档}。

要找到要更改的节点,xmlDocDump很有用。请查看XPath APIxpath2.c example code