libxml2解析xml文件
时间: 2023-07-11 13:23:11 浏览: 48
libxml2是一个用于解析和操作XML文档的C语言库。下面是一个简单的例子,用于解析一个XML文件:
```c
#include <stdio.h>
#include <libxml/parser.h>
#include <libxml/tree.h>
int main() {
xmlDocPtr doc;
xmlNodePtr node;
doc = xmlReadFile("example.xml", NULL, 0);
if (doc == NULL) {
printf("Failed to parse document");
return 1;
}
node = xmlDocGetRootElement(doc);
if (node == NULL) {
printf("Empty document");
xmlFreeDoc(doc);
return 1;
}
printf("Root element: %s\n", node->name);
xmlFreeDoc(doc);
return 0;
}
```
在这个例子中,我们首先通过调用`xmlReadFile()`函数来读取XML文件并解析它。如果解析失败,则该函数将返回NULL。如果解析成功,则可以通过调用`xmlDocGetRootElement()`函数来获取文档的根元素节点。在本例中,我们只是简单地打印了根节点的名称,然后释放了文档。