Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 删除XML文件C+中的子节点+;_C++_Xml_Pugixml - Fatal编程技术网

C++ 删除XML文件C+中的子节点+;

C++ 删除XML文件C+中的子节点+;,c++,xml,pugixml,C++,Xml,Pugixml,我正在使用库进行与XML相关的操作 我的XML文件: <CurrentStatus> <Time Stamp= "12:30"> <price>100</price> <amount>1</amount> </Time> <Time Stamp= "14:50"> <price>10</price>

我正在使用库进行与XML相关的操作

我的XML文件:

<CurrentStatus>
    <Time Stamp= "12:30">
        <price>100</price>
        <amount>1</amount>
    </Time>

    <Time Stamp= "14:50">
        <price>10</price>
        <amount>5</amount>
    </Time> 

    <Time Stamp= "16:30">
        <price>10</price>
        <amount>5</amount>
    </Time>     
</CurrentStatus>
问题:以上代码运行时没有任何错误。它甚至会进入
if语句
,但是为什么执行后原始XML文件保持不变


PS:由于我能够在控制台上显示XML结构,因此我确信根节点和XML文档一般都被正确读取。

我认为问题在于保存

我在
if条件
之后执行了下面的save语句,它成功了

doc.save_file("D:/myfile.xml");

用新内容覆盖XML文件时,您是否遇到错误?@king_nak:没有,没有错误。这是有道理的。将XML文件加载到内存中,在内存中修改DOM,然后必须将新内容从内存写入该文件。这是常见的工作原理。对数据结构的更改通常不会自动写回source@king_nak:是的,因为文档中以及SO答案中没有提到它,所以我错过了它。
doc.save_file("D:/myfile.xml");