C++中常用的XML库有Xerces-C++和TinyXML,下面以TinyXML为例介绍如何使用C++实现DOM解析:
首先,下载TinyXML的源码并编译安装到你的系统中。
在你的C++代码中引入TinyXML的头文件:
#include "tinyxml.h" TiXmlDocument对象,并加载待解析的XML文件:TiXmlDocument doc("example.xml"); if (!doc.LoadFile()) { std::cerr << "Failed to load file" << std::endl; return 1; } TiXmlElement* root = doc.RootElement(); if (!root) { std::cerr << "Failed to get root element" << std::endl; return 1; } for (TiXmlElement* elem = root->FirstChildElement(); elem != NULL; elem = elem->NextSiblingElement()) { // 处理子元素 } const char* name = elem->Attribute("name"); if (name) { std::cout << "Name: " << name << std::endl; } const char* text = elem->GetText(); if (text) { std::cout << "Text: " << text << std::endl; } TiXmlElement* subElem = elem->FirstChildElement(); while (subElem) { // 处理子元素 subElem = subElem->NextSiblingElement(); } doc.Clear(); 通过以上步骤,你可以使用C++实现基于TinyXML的DOM解析功能。更多关于TinyXML的用法和API可以查阅官方文档或者示例代码。