int writeXML(void) { rapidxml::xml_document<> doc; rapidxml::xml_node<> *rot = doc.allocate_node(rapidxml::node_pi,doc.allocate_string("xml version=‘1.0‘ encoding=‘utf-8‘")); rapidxml::xml_node<> *root = doc.allocate_node(rapidxml::node_element,"Root"); doc.append_node(rot); doc.append_node(doc.allocate_node(rapidxml::node_comment,NULL,"XMl根节点")); doc.append_node(root); root->append_node(doc.allocate_node(rapidxml::node_comment,"身份信息")); rapidxml::xml_node<> *p_node = doc.allocate_node(rapidxml::node_element,"信息"); p_node->append_node(doc.allocate_node(rapidxml::node_element,"Name","Toney")); p_node->append_node(doc.allocate_node(rapidxml::node_element,"Age","23")); p_node->append_node(doc.allocate_node(rapidxml::node_element,"ID","3112333123")); root->append_node(p_node); root->append_node(doc.allocate_node(rapidxml::node_comment,"年级信息")); p_node = doc.allocate_node(rapidxml::node_element,"Grade"); p_node->append_node(doc.allocate_node(rapidxml::node_element,"年级","2")); p_node->append_node(doc.allocate_node(rapidxml::node_element,"班级","1")); root->append_node(p_node); std::string text; text.clear(); std::ofstream out("student.xml"); rapidxml::print(std::back_inserter(text),doc); out << text; std::cout << text.c_str() << std::endl; system("pause"); return 0; }
运行结果: