VS下TinyXml使用

1. 概述

TinyXml是C++平台下简单易用的XML操作工具,可以从SourceForge上下载到最新版本的软件。记录TinyXml的基本使用。

2. 使用

step1:下载TinyXml之后得到一个压缩包文件,解压文件得到TinyXML的代码文档等。
step2:在vs的工程中添加下面6个文件,并且在cpp文件中添加#include "stdafx.h"

VS下TinyXml使用_第1张图片

step3:在需要使用TinyXml的文件中添加引用:

//包含TinyXML
#include "tinystr.h"
#include "tinyxml.h"
至此,TinyXml在VS上的配置已经完成。接下来就需要开始通过它提供的工具来生成XML。


这里使用官方给出的例子来说明,先看一下最后XML生成的结果:



    
    
        Welcome to MyApp
        Thank you for using MyApp
    
    
        
    
    

实现的代码:

void write_app_settings_doc()
{
	TiXmlDocument doc;  //定义一个文档类的对象,作为第一个结点
	TiXmlElement* msg;	//定义一个子结点
	TiXmlDeclaration* decl = new TiXmlDeclaration("1.0", "", "");  //第一行预处理指令,分别是符合的规范版本号;编码的字符集UTF-8、GB2312
	//之类的
	doc.LinkEndChild(decl);	//将配置好的预处理指令,添加到XML最开始

	TiXmlElement * root = new TiXmlElement("MyApp");	//定义一个子结点
	doc.LinkEndChild(root);	//添加进Doc类对象

	TiXmlComment * comment = new TiXmlComment();	//写XML注释
	comment->SetValue(" Settings for MyApp ");
	root->LinkEndChild(comment);

	TiXmlElement * msgs = new TiXmlElement("Messages");	//定义一个结点
	root->LinkEndChild(msgs);	//添加到根节点

	msg = new TiXmlElement("Welcome");	//初始化一个结点
	msg->LinkEndChild(new TiXmlText("Welcome to MyApp"));	//在这个结点中添加文本
	msgs->LinkEndChild(msg);	//添加到上一级结点中

	msg = new TiXmlElement("Farewell");	//初始化一个结点
	msg->LinkEndChild(new TiXmlText("Thank you for using MyApp"));
	msgs->LinkEndChild(msg);

	TiXmlElement * windows = new TiXmlElement("Windows");
	root->LinkEndChild(windows);

	TiXmlElement * window;
	window = new TiXmlElement("Window");
	windows->LinkEndChild(window);
	window->SetAttribute("name", "MainFrame");	//设置结点的一些属性
	window->SetAttribute("x", 5);
	window->SetAttribute("y", 15);
	window->SetAttribute("w", 400);
	window->SetAttribute("h", 250);

	TiXmlElement * cxn = new TiXmlElement("Connection");
	root->LinkEndChild(cxn);
	cxn->SetAttribute("ip", "192.168.0.1");
	cxn->SetDoubleAttribute("timeout", 123.456); // floating point attrib

	doc.SaveFile("appsettings.xml");
}


你可能感兴趣的:([1]程序设计)