TinyXML 用法举例 -- 读取XML,生成XML,修改删除XML
发布时间:2020-12-15 23:02:41 所属栏目:百科 来源:网络整理
导读:XML: 中文名称: 可扩展标记语言 英文名称: extensible markup language; XML 定义:用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。(百度百科) 下载地址:http://sourcefor
XML:
中文名称: 可扩展标记语言
英文名称: extensible markup language;
XML 定义:用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。(百度百科)
下载地址:http://sourceforge.net/projects/tinyxml/
将6个文件拷贝到工程目录即可。
tinystr.h
tinyxml.h
tinystr.cpp
tinyxmlerror.cpp
tinyxmlparser.cpp
tinyxml.cpp
读取XML:
TiXmlElement *RootElement = NULL;
TiXmlDocument *pDoc = NULL;
string filefullPath ="test.xml";
pDoc = new TiXmlDocument(filefullPath.c_str());
pDoc->LoadFile();
RootElement = pDoc->RootElement();
使用RootElement即可遍历所有节点
遍历XML节点:
使用XML根节点即可遍历所有节点
TiXmlElement *currentNode = RootElement->FirstChildElement();
while (currentNode)
{
currentNode = currentNode->NextSiblingElement();
}
遍历XML节点的属性
TiXmlAttribute *Addr = currentNode->FirstAttribute();
while (Addr)
{
printf("%s %sn",Addr->Name(),Addr->Value());//打印属性名字和对应值
Addr = Addr->Next();
}
生成XML:
pDoc = new TiXmlDocument();
TiXmlDeclaration *pDeclaration = new TiXmlDeclaration(("1.0"),("UTF-8"),(""));
pDoc->LinkEndChild(pDeclaration);
RootElement = new TiXmlElement(("MyGUI"));
RootElement->SetAttribute("type","Resource");
RootElement->SetAttribute("version","1.1");
pDoc->LinkEndChild(RootElement);
TiXmlElement *xnode = new TiXmlElement("Resource");
xnode->SetAttribute("type","ResourceSkin");
xnode->SetAttribute("name","pig");
RootElement->LinkEndChild(xnode);
//屏幕打印XML
pDoc->Print();
结果:
<?xml version="1.0" encoding="UTF-8" ?>
<MyGUI type="Resource" version="1.1">
</MyGUI>
//TiXmlElement *curNode
删除节点:
RootElement->RemoveChild(curNode);
添加节点:
RootElement->LinkEndChild(curNode);
文件输出XML:
pDoc->SaveFile("myxml.xml");
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读