boolCreateXML(constchar*xml_file)
{
//定义一个TiXmlDocument类指针
TiXmlDocument*document=newTiXmlDocument;
if(NULL==document)
{
returnfalse;
}
//定义一个xml文件头部声明
TiXmlDeclaration*declaration=newTiXmlDeclaration(("1.0"),(""),(""));
if(NULL==declaration)
{
returnfalse;
}
document->LinkEndChild(declaration);
//生成一个根节点:MyApp
TiXmlElement*first_element=newTiXmlElement(("MyApp"));
if(NULL==first_element)
{
returnfalse;
}
document->LinkEndChild(first_element);
//生成子节点:Messages
TiXmlElement*child_element_messages=newTiXmlElement(("Messages"));
if(NULL==child_element_messages)
{
returnfalse;
}
first_element->LinkEndChild(child_element_messages);
//生成子节点:Welcome
TiXmlElement*child_element_welcome=newTiXmlElement(("Welcome"));
if(NULL==child_element_welcome)
{
returnfalse;
}
child_element_messages->LinkEndChild(child_element_welcome);
//设置Welcome节点的值
constchar*str_value=("WelcometoMyApp");
TiXmlText*welcome_value=newTiXmlText(str_value);
child_element_welcome->LinkEndChild(welcome_value);
//生成子节点:Farewell
TiXmlElement*child_element_farewell=newTiXmlElement(("Farewell"));
if(NULL==child_element_farewell)
{
returnfalse;
}
child_element_messages->LinkEndChild(child_element_farewell);
//设置Farewell节点的值
str_value=("ThankyouforusingMyApp");
TiXmlText*farewell_value=newTiXmlText(str_value);
child_element_farewell->LinkEndChild(farewell_value);
//生成子节点:Windows
TiXmlElement*child_element_windows=newTiXmlElement(("Windows"));
if(NULL==child_element_windows)
{
returnfalse;
}
first_element->LinkEndChild(child_element_windows);
//生成子节点:Window
TiXmlElement*child_element_window=newTiXmlElement(("Window"));
if(NULL==child_element_window)
{
returnfalse;
}
child_element_windows->LinkEndChild(child_element_window);
//设置节点Window的值
child_element_window->SetAttribute(("name"),("MainFrame"));
child_element_window->SetAttribute(("x"),("5"));
child_element_window->SetAttribute(("y"),("15"));
child_element_window->SetAttribute(("w"),("400"));
child_element_window->SetAttribute(("h"),("250"));
//生成子节点:Connection
TiXmlElement*child_element_connection=newTiXmlElement(("Connection"));
if(NULL==child_element_connection)
{
returnfalse;
}
first_element->LinkEndChild(child_element_connection);
//设置节点Connection的值
child_element_connection->SetAttribute(("ip"),("192.168.0.1"));
child_element_connection->SetAttribute(("timeout"),("123.456000"));
//保存至文件
document->SaveFile(xml_file);
//输出到控制台
cout<<"CreatXML:"<<endl;
document->Print(stdout);
returntrue;
}
|
相关推荐
tinyxml解析XML文件
TinyXML是个解析库,主要由DOM模型类(TiXmlBase、TiXmlNode、TiXmlAttribute、TiXmlComment、TiXmlDeclaration、TiXmlElement、TiXmlText、TiXmlUnknown)和操作类(TiXmlHandler)构成。它由两个头文件(.h文件)...
tinyxml 读写xml方法,简单易用!
C++ XML解析之TinyXML篇
tinyxml用来解析xml文件的类,非常好用,编译没问题,c++的
Tinyxml iOS xml 解析 Tinyxml iOS xml 解析
C++ XML 解析之 TinyXML
这个tinyxml是在部门产品应用过程中发现存在内存泄漏的问题,通过代码分析,解决了在xml使用结束时,内存清理不彻底而导致的内存泄漏问题。电驴源码中使用的tinyxml也存在这个问题。不知最新版有没有修复。
C++ 使用TinyXML解析XML文件,简单清晰,仅供参考。读取和设置xml配置文件是最常用的操作,TinyXML是一个开源的解析XML的C++解析库
C++使用tinyxml解析xml的demo
tinyxml与tinyxml2两个版本的源码,操作xml很方便,解压可以直接使用.
TinyXML2是simple、small、efficient开源的C++ XML文件解析库,可以很方便的应用到现有的项目之中。非常适合存储简单数据,配置文件,对象序列化等数据量不是很大的操作。
Tinyxml文件解析经典例子
对xml文件进行解析,运行在winCE环境下
tinyXML解析实例源码,有了这个解析XML各种方便
很简单的TinyXML的解析代码,带有.sln。VS2005编译通过,生成IP设备配置文件
一款轻量级的XML解析器,能够容易的解决中文问题 如果你要做的东西不是非常大的项目的话,比较...rar压缩包中包含了TinyXML解析器配套的文档,支持C、c++的轻量级的XML文档解析器,支持中文,非常适合不太大的项目
利用tinyxml2解析XML读取数据 此工程为本人测试tinyxml2解析XML读取数据的效率进行的一个小测试程序
软件介绍: TinyXml解析xml文件,本资源已经将TinyXml源码打包成Dll动态库,可直接调用,非常方便。TinyXml.dllTinyXml.libvcruntime140_app.dll
TinyXML使用文档对象模型(DOM),这意味着XML数据被解析成一个可被浏览和操作的C++对象,然后它可以被写到磁盘或者另一个输出流中。你也可以把C++对象构造成一个XML文档然后把它写到磁盘或者另一个输出流中。