c++builder使用XMLDocument操作XML进行增,删,改,读!
//头文件
#include <XMLDoc.hpp>
#include <xmldom.hpp>
#include <XMLIntf.hpp>
//操作
//定义变量
AnsiString GameTDJpath;//只能是AnsiString类型
AnsiString gamepath=“gamepath”;//只能是AnsiString类型
_di_IXMLDocument XmlNetbargpp = NewXMLDocument(); //新建一个对像
XmlNetbargpp->Active=true;//激活
//读取
XmlNetbargpp->LoadFromFile(ExtractFilePath(Application->ExeName) + "netbar.xml");//加载xml(得到exe路径加上XML名组合成动态的路径)
XmlNetbargpp->Active=false;//手动关闭与打开在多次使用时有用
XmlNetbargpp->Active=true;//手动关闭与打开在多次使用时有用
GameTDJpathtext = XmlNetbargpp->DocumentElement->ChildNodes->FindNode(gamepath)->GetAttribute("path");//查找节点gametdj的属性path的值
//插入
_di_IXMLNode root = XmlNetbargpp->DocumentElement; //获取根节点ROOT
root = root->AddChild("game");//新加节点
root ->Attributes["path"]="";//增加属性path的值为空性
XmlNetbargpp->SaveToFile("netbar.xml");//保存后才会更新XML
//更新
_di_IXMLNode nodeupdate = XmlNetbargpp->DocumentElement->ChildNodes->FindNode(gamepath);//查找gamepath节点
nodeupdate ->AttributeNodes->operator [](0)->NodeValue= (WideString)(“path的值”);//设定node查找到节点下的第一个属性path的值
XmlNetbargpp->SaveToFile("netbar.xml");//保存后才会更新xml
//删除
_di_IXMLNode node2=XmlNetbargpp->DocumentElement;//可以先进行查找后,再删除
node2->ChildNodes->Delete(WideString(“gamepath”));//删除节点
gamepathXmlNetbargpp->SaveToFile("netbar.xml");//保存后才会更新XML
<pre>
摘自 破空的专栏
补充:软件开发 , C++ ,