转自:http://blog.youkuaiyun.com/misskissc/article/details/11515019
1.下载windows版tinyXML安装包,病解压缩
2.vs2010新建工程并保存。
3.将以下6个文件拷贝到main.cpp同目录下:
tinyxml.cpp,
tinyxml.h,
tinyxmlerror.cpp,
tinyxmlparser.cpp,
tinystr.cpp,
tinystr.h
4.解决方案资源管理器->头文件右键->添加->现有项->加入.h文件
5.解决方案资源管理器->源文件右键->添加->现有项->加入.cpp文件
并且4个cpp文件的开头加入#include “StdAfx.h”
6.解决方案资源管理器->头文件右键->添加->新建项->加入test_xml.h文件
//test_xml.h
#include "tinyxml.h"
#include "tinystr.h"
class MyTinyXML
{
private:
TiXmlDocument *pDoc;
TiXmlDeclaration *pDeclaration;
TiXmlElement *pRootNode;
TiXmlElement *pName;
TiXmlElement *pAdd;
TiXmlText *pNameVaule;
TiXmlText *pAddVaule;
public:
MyTinyXML();
~MyTinyXML();
bool create_xml();
};
7.解决方案资源管理器->源文件右键->添加->新建项->加入test_xml.cpp文件
//test_xml.cpp
#include "StdAfx.h"
#include "test_xml.h"
//构造函数
MyTinyXML::MyTinyXML():pDoc(NULL),pDeclaration(NULL),pRootNode(NULL),pName(NULL),pAdd(NULL),pNameVaule(NULL),pAddVaule(NULL) {}
//析构函数
MyTinyXML::~MyTinyXML() {
//释放各new指针的堆内存块
if ( pAddVaule ) {
delete pAddVaule;
}
}
//创建一个XML文件
bool MyTinyXML::create_xml()
{
//定义TiXmlDocument 指针
pDoc = new TiXmlDocument;
if ( !pDoc )
{
return false;
}
//定义一个xml文件头部声明
pDeclaration = new TiXmlDeclaration( "1.0", "UTF-8", "yes" );
if ( !pDeclaration )
{
return false;
}
pDoc->LinkEndChild( pDeclaration );
//根节点
pRootNode = new TiXmlElement( "ChildStation" );
if ( !pRootNode )
{
return false;
}
pDoc->LinkEndChild( pRootNode );
//子节点1
pName = new TiXmlElement( "Name" );
if ( !pName )
{
return false;
}
pRootNode->LinkEndChild( pName );
//子节点2
pAdd = new TiXmlElement( "Add" );
if ( !pAdd )
{
return false;
}
pRootNode->LinkEndChild( pAdd );
//设置name节点的值
pNameVaule = new TiXmlText( "STM100" );
pName->LinkEndChild(pNameVaule);
pAddVaule = new TiXmlText( "0001" );
pAdd->LinkEndChild( pAddVaule );
pDoc->SaveFile( "ChildStation.xml" );
return true;
}
//main.cpp
#include "test_xml.h"
void func_tinyxml () {
MyTinyXML xml;
xml.create_xml();
}
int main() {
func_tinyxml();
}
8.在main.cpp同目录下生成ChildStation.xml文件,文件内容:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<ChildStation>
<Name>STM100</Name>
<Add>0001</Add>
</ChildStation>
1926

被折叠的 条评论
为什么被折叠?



