在C++中讀取XML文件通常使用第三方庫來實現,比較常用的庫有TinyXML、RapidXML和PugiXML等。
以下是使用PugiXML庫來讀取XML文件的示例代碼:
#include <iostream>
#include "pugixml.hpp"
int main() {
pugi::xml_document doc;
if (!doc.load_file("example.xml")) {
std::cerr << "Failed to load XML file." << std::endl;
return 1;
}
pugi::xml_node root = doc.child("root");
for (pugi::xml_node node = root.first_child(); node; node = node.next_sibling()) {
std::cout << "Node name: " << node.name() << std::endl;
for (pugi::xml_attribute attr = node.first_attribute(); attr; attr = attr.next_attribute()) {
std::cout << "Attribute name: " << attr.name() << ", value: " << attr.value() << std::endl;
}
std::cout << "Node value: " << node.child_value() << std::endl;
}
return 0;
}
在上面的代碼中,我們首先加載XML文件(假設文件名為"example.xml"),然后獲取根節點,遍歷根節點的子節點,并輸出節點的名稱、屬性和值。
請注意,你需要在項目中安裝PugiXML庫,并且在編譯時鏈接該庫。