读书人

linux c语言libxml2解析文件,该如何处

发布时间: 2012-03-23 12:06:21 作者: rapoo

linux c语言libxml2解析文件
用libxml2解析xml文件时,出现这样的现象。代码如下

C/C++ code
    xmlDocPtr doc;    xmlNodePtr curNode = NULL;    xmlNodePtr lowNode = NULL;    doc = xmlReadFile(FILENAME, "UTF-8", XML_PARSE_RECOVER);        curNode = xmlDocGetRootElement(doc);       printf("root element: %s\n", curNode->name);    curNode = curNode->xmlChildrenNode;    printf("children node: %s\n", curNode->name);

xml文件格式如下:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<son>
<sys name="01" >
</son>
</root>
为什么我printf("children node: %s\n", curNode->name);打印出来的内容时text,而不是son呢?
难道son这个节点不是子节点吗?还是我的格式有问题?

[解决办法]
同意楼上的观点:doc = xmlReadFile("CreatedXml.xml","UTF-8",XML_PARSE_NOBLANKS);

过滤掉了空白。
[解决办法]
探讨

同意楼上的观点:doc = xmlReadFile("CreatedXml.xml","UTF-8",XML_PARSE_NOBLANKS);

过滤掉了空白。

读书人网 >C语言

热点推荐