【问题标题】:How to modify xml file and save the changes using libxml2 in C?如何在 C 中使用 libxml2 修改 xml 文件并保存更改?
【发布时间】:2016-01-27 05:30:44
【问题描述】:

实际 xml 文件中的值不会更新。如何在 xml 文件中更新更改?谢谢。

xmlTextReader *xmlReaderPtr = NULL;
xmlNodePtr curNode;

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

【问题讨论】:

    标签: c linux libxml2


    【解决方案1】:

    使用像 xmlreader 这样的流式 API,您只能解析文档。如果要修改和写入文档,请使用“普通”非流式 API 将整个文档(xmlDoc)读入内存(使用xmlParseFilexmlReadFile 等),进行所需的更改,然后使用xmlDocDump编写文档。

    要定位要更改的节点,XPath API 很有用。看看xpath2.c example codeother examples

    【讨论】:

      猜你喜欢
      • 2014-06-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-15
      • 1970-01-01
      • 1970-01-01
      • 2012-03-09
      相关资源
      最近更新 更多