第1步:2个头文件,4个源文件,添加到当前工程
第2步:会报错,正常现象,直接在4个源文件中添加#include "stdafx.h"(这个应该会添吧),错误解决
---------------------------------------------------------------------------
正在编译...
stdafx.cpp
正在编译...
tinyxmlparser.cpp
e:\xml解析\tinyxmltest\tinyxmlparser.cpp(36) : warning C4005: “TIXML_LOG” : 宏重定义
e:\xml解析\tinyxmltest\tinyxmlparser.cpp(34) : 参见“TIXML_LOG”的前一个定义
e:\xml解析\tinyxmltest\tinyxmlparser.cpp(1639) : fatal error C1010: 在查找预编译头指令时遇到意外的文件结尾
tinyxmlerror.cpp
e:\xml解析\tinyxmltest\tinyxmlerror.cpp(54) : fatal error C1010: 在查找预编译头指令时遇到意外的文件结尾
tinyxml.cpp
e:\xml解析\tinyxmltest\tinyxml.cpp(1889) : fatal error C1010: 在查找预编译头指令时遇到意外的文件结尾
tinystr.cpp
e:\xml解析\tinyxmltest\tinystr.cpp(117) : fatal error C1010: 在查找预编译头指令时遇到意外的文件结尾
tinyxmltest.cpp
正在生成代码...
---------------------------------------------------------------------------
第3步:添加1个头文件#include "tinyxml.h",即可运行.给谁用?工程谁用给谁
一般是入口点main那个源文件用// tinyxmltest.cpp : 定义控制台应用程序的入口点。
第4步:照抄了,复制粘贴即可,运行就可看到源文件夹中生成了一个test.xml文件.代码已贴到下面

---------------------------------------源代码--------------------------------------------
// tinyxmltest.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include "tinyxml.h"
#include <iostream>
using namespace std;
int WriteXML() ;
int _tmain(int argc, _TCHAR* argv[])
{
cout << "开始测试!" <<endl;
WriteXML() ;
cout << "结束测试!" << endl ;
return 0;
}
int WriteXML()
{
//表示整个XML文档,不对应其中某个特定的节点
TiXmlDocument xmlDoc( "test.xml" ); // 建立一个XML文件
//表示声明
TiXmlDeclaration Declaration( "1.0","gb2312", "yes" ); // 声明XML的属性
xmlDoc.InsertEndChild( Declaration ); // 写入基本的XML头结构
//表示一个节点,包含节点的一般方法,如访问自节点、兄弟节点、编辑自身、编辑子节电
TiXmlNode * pNode = NULL;
//表示元素节点,可以包含子节点和TiXmlAttribute
TiXmlElement* pRootElm = NULL;
TiXmlElement* pChildeElm = NULL;
TiXmlElement* pItemElm = NULL;
//表示文本节点
TiXmlText* pText = NULL; // 一个指向Text的指针
pText = new TiXmlText("good") ;//给一个文本节点赋值
pRootElm = new TiXmlElement( "todo" ); //创建一个元素节点(这里做的是根元素节点)
pNode = xmlDoc.InsertEndChild(*pRootElm) ;// 写入XML文件的跟节点(xmlDocXML文件的根节点)
pRootElm = pNode->ToElement() ;//设置当前节点位置(即根节点)
pChildeElm = new TiXmlElement("child1") ; //创建一个元素节点(这里是前面创建的节点的子节点)
pChildeElm->SetAttribute("num", 9) ;//设置这个元素的属性为9
pNode = pRootElm->InsertEndChild(*pChildeElm) ;// 写入XML元素节点并返回插入后节点(pRootElm的子节点,即根节点的子节点)
TiXmlElement* pChildeElm1 = NULL; //创建一个新元素节点,这里的节点做跟元素的新节点
pChildeElm1 = pNode->ToElement() ;//设置到刚才刚刚插入的节点位置
pChildeElm1->InsertEndChild(*pText) ;//插入文本
delete pChildeElm ;
pChildeElm = NULL ;
pChildeElm = new TiXmlElement("child2") ;
pChildeElm->SetAttribute("num", 10) ;
//将新建立的节点插入到上面节点之前
pNode = pRootElm->InsertBeforeChild (pChildeElm1, *pChildeElm) ;
//设置第二个节点的值
TiXmlElement* pChildeElm2 = NULL;
pChildeElm2 = pNode->ToElement() ;
pChildeElm2->InsertEndChild(*pText) ;
xmlDoc.Print() ;
xmlDoc.SaveFile(); // 把XML文件写入硬盘
return 0 ;
}
-----------------------------------------------------
附注1:代码已上传至邮箱,即取即用,注:tinyxml那2个头文件与4个源文件已一起上传了
附注2:此文仅为tinyxml入门教程1---怎样使用,后续还会扩展其使用方法