TinyXml基本入门(一)

参考:http://blog.csdn.net/clever101/article/details/5334369

参考:http://www.programgo.com/article/73711496638/


近期在学习xml,偶然得知tinyXml这个东西,想尽快上手。

(1)在http://sourceforge.net/projects/tinyxml/下载TinyXml的官方例子

(2)新建空的控制台程序,将(1)中下载的官方例子中的

tinyxml.h

tinystr.h

tinystr.cpp

tinyxml.cpp

tinyxmlparser.cpp

tinyxmlerror.cpp

包含到当前工程中。

(3)新建createXML.cpp.cpp文件

包含头文件 #include "tinyxml.h"

复制如下代码

#include <iostream>
#include <tchar.h>
#include "tinyxml.h"


/*! 
*  /brief 创建xml文件。 

*  /param XmlFile xml文件全路径。 
*  /return 是否成功。true为成功,false表示失败。 
*/  
bool CreateXml(std::string XmlFile)  
{  
    // 定义一个TiXmlDocument类指针  
    TiXmlDocument *pDoc = new TiXmlDocument;  
    if (NULL==pDoc)  
    {  
        return false;  
    }  
    TiXmlDeclaration *pDeclaration = new TiXmlDeclaration(_T("1.0"),_T(""),_T(""));  
    if (NULL==pDeclaration)  
    {  
        return false;  
    }  
    pDoc->LinkEndChild(pDeclaration);  
    // 生成一个根节点:MyApp  
    TiXmlElement *pRootEle = new TiXmlElement(_T("MyApp"));  
    if (NULL==pRootEle)  
    {  
        return false;  
    }  
    pDoc->LinkEndChild(pRootEle);  
    // 生成子节点:Messages  
    TiXmlElement *pMsg = new TiXmlElement(_T("Messages"));  
    if (NULL==pMsg)  
    {  
        return false;  
    }  
    pRootEle->LinkEndChild(pMsg);  
    // 生成子节点:Welcome  
    TiXmlElement *pWelcome = new TiXmlElement(_T("Welcome"));  
    if (NULL==pWelcome)  
    {  
        return false;  
    }  
    pMsg->LinkEndChild(pWelcome);  
    // 设置Welcome节点的值  
    std::string strValue = _T("Welcome to MyApp");  
    TiXmlText *pWelcomeValue = new TiXmlText(strValue.c_str());  
    pWelcome->LinkEndChild(pWelcomeValue);  
    // 生成子节点:Farewell  
    TiXmlElement *pFarewell = new TiXmlElement(_T("Farewell"));  
    if (NULL==pFarewell)  
    {  
        return false;  
    }  
    pMsg->LinkEndChild(pFarewell);  
    // 设置Farewell节点的值  
    strValue = _T("Thank you for using MyApp");  
    TiXmlText *pFarewellValue = new TiXmlText(strValue.c_str());  
    pFarewell->LinkEndChild(pFarewellValue);  
    // 生成子节点:Windows  
    TiXmlElement *pWindows = new TiXmlElement(_T("Windows"));  
    if (NULL==pWindows)  
    {  
        return false;  
    }  
    pRootEle->LinkEndChild(pWindows);  
    // 生成子节点:Window  
    TiXmlElement *pWindow = new TiXmlElement(_T("Window"));  
    if (NULL==pWindow)  
    {  
        return false;  
    }  
    pWindows->LinkEndChild(pWindow);  
    // 设置节点Window的值  
    pWindow->SetAttribute(_T("name"),_T("MainFrame"));  
    pWindow->SetAttribute(_T("x"),_T("5"));  
    pWindow->SetAttribute(_T("y"),_T("15"));  
    pWindow->SetAttribute(_T("w"),_T("400"));  
    pWindow->SetAttribute(_T("h"),_T("250"));  
    // 生成子节点:Window  
    TiXmlElement *pConnection  = new TiXmlElement(_T("Connection"));  
    if (NULL==pConnection)  
    {  
        return false;  
    }  
    pRootEle->LinkEndChild(pConnection);  
    // 设置节点Connection的值  
    pConnection->SetAttribute(_T("ip"),_T("192.168.0.1"));  
    pConnection->SetAttribute(_T("timeout"),_T("123.456000"));  
    pDoc->SaveFile(XmlFile.c_str());  
    return true;  
}   


/*! 
*  /brief 打印xml文件。 

*  /param XmlFile xml文件全路径。 
*  /return 是否成功。true为成功,false表示失败。 
*/  
bool PaintXml(std::string XmlFile)  
{  
    // 定义一个TiXmlDocument类指针  
    TiXmlDocument *pDoc = new TiXmlDocument();  
    if (NULL==pDoc)  
    {  
        return false;  
    }  
    pDoc->LoadFile(XmlFile.c_str());  
    pDoc->Print();  
    return true;  
}  


int main()
{
    std::string XmlFile = _T("myTestTinyXml");
    if (CreateXml(XmlFile))
    {
        PaintXml(XmlFile);
    }
     
    return 0;
}

(4)编译链接运行即可!

本文的代码链接:http://download.csdn.net/detail/fan0920/9617659


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
毕业设计,基于SpringBoot+Vue+MySQL开发的体育馆管理系统,源码+数据库+毕业论文+视频演示 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本体育馆管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍的效果。此体育馆管理系统利用当下成熟完善的SpringBoot框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的Mysql数据库进行程序开发。实现了用户在线选择试题并完成答题,在线查看考核分数。管理员管理收货地址管理、购物车管理、场地管理、场地订单管理、字典管理、赛事管理、赛事收藏管理、赛事评价管理、赛事订单管理、商品管理、商品收藏管理、商品评价管理、商品订单管理、用户管理、管理员管理等功能。体育馆管理系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。 关键词:体育馆管理系统;SpringBoot框架;Mysql;自动化
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小帆别吃糖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值