summaryrefslogtreecommitdiff
path: root/docs/samples/modify_remove.cpp
blob: 21dcc32ee2d5ea10a9165d6180007d0487d3caa9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include "pugixml.hpp"

#include <iostream>

int main()
{
	pugi::xml_document doc;
	if (!doc.load("<node><description>Simple node</description><param name='id' value='123'/></node>")) return -1;

    //[code_modify_remove
	// remove description node with the whole subtree
	pugi::xml_node node = doc.child("node");
	node.remove_child("description");

	// remove id attribute
	pugi::xml_node param = node.child("param");
	param.remove_attribute("value");

	// we can also remove nodes/attributes by handles
	pugi::xml_attribute id = param.attribute("name");
	param.remove_attribute(id);
	//]

	doc.print(std::cout);
}