3、pugixml 改节点名、属性名、属性值
pugi::xml_document doc; if (!doc.load_string("<node id='123'>text</node>", pugi::parse_default | pugi::parse_comments)) return -1;//xml的内容 doc.print(cout);//打印原始内容 // 节点node pugi::xml_node node = doc.child("node"); // 修改节点名,node->notnode std::cout << node.set_name("notnode"); std::cout << ", new node name: " << node.name() << std::endl; // 属性id pugi::xml_attribute attr = node.attribute("id"); // 修改属性名、值,id->key,123->345 std::cout << attr.set_name("key") << ", " << attr.set_value("345"); std::cout << ", new attribute: " << attr.name() << "=" << attr.value() << std::endl; // 再次修改属性id的值,345->1.234 attr.set_value(1.234); std::cout << "new attribute value: " << attr.value() << std::endl; // 再次修改属性id的值,1.234->true attr = true;//布尔值 std::cout << "final attribute value: " << attr.value() << std::endl; doc.print(std::cout);//打印结果