TinyXML2如何解析xml,举例说明
时间: 2024-05-09 12:17:58 浏览: 82
TinyXML2是一个轻量级的XML解析器库,使用C++编写。它可以通过遍历XML文档来获取节点和属性的信息。以下是一个示例:
假设我们有一个名为test.xml的XML文件,其中包含以下内容:
```xml
<?xml version="1.0" encoding="UTF-8"?>
<root>
<element attribute="value">Text</element>
</root>
```
我们可以使用TinyXML2来解析这个文件:
```c++
#include "tinyxml2.h"
#include <iostream>
using namespace tinyxml2;
int main() {
XMLDocument doc;
doc.LoadFile("test.xml");
// 获取根节点
XMLElement* root = doc.RootElement();
// 遍历子节点
for (XMLElement* elem = root->FirstChildElement(); elem != NULL; elem = elem->NextSiblingElement()) {
std::cout << "Element name: " << elem->Name() << std::endl;
// 获取属性
const char* attribute = elem->Attribute("attribute");
if (attribute) {
std::cout << "Attribute value: " << attribute << std::endl;
}
// 获取文本
const char* text = elem->GetText();
if (text) {
std::cout << "Text value: " << text << std::endl;
}
}
return 0;
}
```
输出结果为:
```
Element name: element
Attribute value: value
Text value: Text
```
这个示例演示了如何使用TinyXML2解析XML文件,并获取节点和属性的信息。
阅读全文