写一段使用c语言读取xml文件的代码
时间: 2023-12-24 14:03:01 浏览: 146
编译原理,词法分析&语法分析及源代码
以下是使用C语言读取XML文件的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <libxml/parser.h>
#include <libxml/tree.h>
int main() {
xmlDocPtr doc;
xmlNodePtr root, node;
// 加载XML文件
doc = xmlParseFile("example.xml");
if (doc == NULL) {
fprintf(stderr, "Failed to parse XML file.\n");
return EXIT_FAILURE;
}
// 获取根节点
root = xmlDocGetRootElement(doc);
// 遍历所有子节点
for (node = root->children; node != NULL; node = node->next) {
if (node->type == XML_ELEMENT_NODE) {
// 处理元素节点内容
printf("Element: %s\n", node->name);
} else if (node->type == XML_TEXT_NODE) {
// 处理文本节点内容
printf("Text: %s\n", node->content);
}
}
// 释放资源
xmlFreeDoc(doc);
xmlCleanupParser();
return EXIT_SUCCESS;
}
```
该代码使用libxml库读取XML文件,首先通过xmlParseFile函数加载XML文件,然后通过xmlDocGetRootElement函数获取根节点,接着遍历所有子节点,对于元素节点和文本节点分别处理其内容,最后释放资源。
阅读全文