当前位置:编程学习 > XML/UML >>

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++ ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,