TinyXml基础运用–创建一个XML文件

tinyxml是一个小巧的c++ xml库,很容易嵌到工程中,使用起来也很方便,小弟不才,拿出一点基础的用法和大家讨论一下,有错误大家指正一下。

 

为了方便使用,我把tinyxml编译成了一个静态库,当然也可以把源文件考到工程中,主要的有

tinyxml.h

tinystr.h

tinyxmlerror.cpp

tinystr.cpp

tinyxmlparser.cpp

tinyxml.cpp

这几个文件。

-----------------------------------------

下面说说 xml 结构,如果很熟了,就跳过这段吧:)

<?xml version="1.0"  encoding="uft-8" standalone="yes"?>
<root>
<Item>text</Item>
</root>

上面是一个简单的xml,第一行是xml的描述,然后是一个根结点,一个子节点,和一个文本节点。

在xml中节点(文本除外)被叫做Element,上面也可以说成:

一个根element root下有一个子element Item,

子element Item下有一个文本节点 text。

 

如果能清楚的认识xml结构,那么下面的代码就很容易理解了。

如果对xml的结构不太了解,可以在网上搜“xml, dom”的相关内容了解。

----------------------------------------

下面看看tinyxml的类层次图(class Hierarchy)

我这篇要用到的类 TiXmlDeclaration,TiXmlDocumnet,TiXmlElement都是继承于TiXmlNode。

了解类层次图在OO编程中很重要。

------------------------------------

下面就开始创建我们第一个XML文件吧!看代码

TiXmlDocument doc;     //创建一个文档类
TiXmlDeclaration* dec = new TiXmlDeclaration("1.0","",""); //创建一个描述,构造参数(version,encoding,standalone)
TiXmlElement* rootElement = new TiXmlElement("root"); //创建一个根element root
TiXmlElement* itemElement = new TiXmlElement("Item"); //创建一个子 element Item
TiXmlText* text = new TiXmlText("text"); //创建一个文本节点text
itemElement->LinkEndChild(text); //将文本节点添加到Item element下
rootElement->LinkEndChild(itemElement);//将Item element添加到root element下
doc.LinkEndChild(dec);//文档添加描述
doc.LinkEndChild(rootElement);//文档添加root element
doc.SaveFile("new.xml");//保存到文件new.xml

 

好了,代码运行成功就可以看到程序生成了一个xml文件,内容为

<?xml version="1.0" ?>
<root>
    <Item>text</Item>
</root>

-------------------------

最后留个给c++入门者个问题:

为什么我new出来的对象没有delete,难道不会内存泄露吗?!

-------------------------

完!


原文链接: https://www.cnblogs.com/guawoo/archive/2012/01/06/2315173.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    TinyXml基础运用--创建一个XML文件

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/39812

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月8日 下午4:27
下一篇 2023年2月8日 下午4:30

相关推荐