在调用second()之后的这个简单代码中,1.xml只有一个节点" 1"。为什么pugi会替换节点,我该怎么做才能正确修改?
void first()
{
pugi::xml_document document;
pugi::xml_parse_result result = document.load_file("C:\\1.xml", parse_full);
pugi::xml_node node = document.append_child("0");
node.append_attribute("message") = "something";
document.save_file("C:\\1.xml");
}
void second()
{
pugi::xml_document document;
pugi::xml_parse_result result = document.load_file("C:\\1.xml", parse_full);
pugi::xml_node node = document.append_child("1");
node.append_attribute("message") = "something else";
document.save_file("C:\\1.xml");
}
void test()
{
first();
second();
}
答案 0 :(得分:1)
您应该检查load_file
的结果。
以下是这里发生的事情:
load_file()
失败,生成空文档