开源TinyXML 最简单的新手教程
TinyXML它是基于一个非常受欢迎的现在DOM型号XML解析器,简单易用且小巧玲珑,很适合存储简单数据。配置文件。
该项目属于开源项目,在sourceforge上边的链接是:http://sourceforge.net/projects/tinyxml/
当前最新版本号是2.6.2
先看一下源代码文档的结构:
Docs是帮助文档。里边有许多的使用说明,只截一张图看一下:
详细依据须要再看
我们使用的是它的库。能够是静态的也能够是动态库。我就用静态库了,将这里边的几个头文件和源文件一起创建一个project,生成Lib库:tinyxml.lib
使用的时候,将这两个头文件以及生成的静态库加进去:
一个简单的样例
#include <iostream>
using namespace std;#ifdef TIXML_USE_STL
#include <iostream>
#include <sstream>
using namespace std;
#else
#include <stdio.h>
#endif#if defined( WIN32 ) && defined( TUNE )
#include <crtdbg.h>
_CrtMemState startMemState;
_CrtMemState endMemState;
#endif#include "tinyxml/tinyxml.h"int main()
{TiXmlDocument *pDoc = new TiXmlDocument; if (NULL==pDoc) { return false; } TiXmlDeclaration *pDeclaration = new TiXmlDeclaration("1.0","gb2312",""); if (NULL==pDeclaration) { return false; } pDoc->LinkEndChild(pDeclaration); // 生成一个根节点TiXmlElement *pRootEle = new TiXmlElement("索引数据包信息"); pDoc->LinkEndChild(pRootEle); //头节点TiXmlElement *pHeader = new TiXmlElement("头节点"); pRootEle->LinkEndChild(pHeader); TiXmlElement *pCellNode = new TiXmlElement("字段1"); pHeader->LinkEndChild(pCellNode);pCellNode->SetAttribute("str1","1状态");pCellNode->SetAttribute("str2","0状态");pDoc->SaveFile("d:\\result.xml"); return 0;
}
结果:
临时这里边的字符串不能是宽字符的。转换能够这样:
DWORD n=WideCharToMultiByte(CP_OEMCP,NULL,szBuf,-1,NULL,0,NULL,FALSE);
char *cname=new char[n+1];
WideCharToMultiByte(CP_OEMCP,NULL,szBuf,-1,cname,n,NULL,FALSE);
cname[n]=0;
当中szBuf是宽字符串。
代码project在这:http://download.csdn.net/detail/duhaomin/7517915
參考:
http://www.cnblogs.com/phinecos/archive/2008/03/11/1100912.html
http://blog.csdn.net/clever101/article/details/5334369
版权声明:本文博主原创文章,博客,未经同意不得转载。
转载于:https://www.cnblogs.com/zfyouxi/p/4816324.html
开源TinyXML 最简单的新手教程相关推荐
- tinyxml c语言,开源TinyXML 最简单的新手教程
TinyXML它是基于一个非常受欢迎的现在DOM型号XML解析器,简单易用且小巧玲珑,很适合存储简单数据.配置文件. 当前最新版本号是2.6.2 先看一下源代码文档的结构: Docs是帮助文档.里边有 ...
- ROS新手教程【一】ROS开源机器人操作系统简介
导师是机器人方向的,毕设就让我ROS的研究,网上有几篇新手教程,我自己照着做也行,但想了想,一直没有写博客的习惯,索性就从这次开始,主要参考是wiki,其实我建议看得懂英文的照着做就好,不理解得地方再 ...
- asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程...
最近在学习张善友老师的NanoFabric 框架的时了解到Exceptionless : https://exceptionless.com/ !因此学习了一下这个开源框架!下面对Exceptionl ...
- [转]ASP.NET MVC3 新手教程:Hellow简单示例
本文转自:http://www.cyqdata.com/cnblogs/article-detail-52905 今天给大伙介绍一下:ASP.NET MVC3 新手教程:Hellow简单示例,帮助新手 ...
- CAD简单圣诞树新手入门教程:
合适CAD简单圣诞树新手入门教程: 花:1.先画花瓣 2.画两个相交的圆 3.修剪掉不用的边 4.变成花瓣 5.然后选择花瓣应用阵型工具 6.阵型数量为6个 7.这样花就画好了. 树:1.首先用圆弧命 ...
- ROS探索总结(一)(二)(三):ROS总体框架 ROS总体框架 ROS新手教程
ROS探索总结(一)--ROS简介 一.历史 随着机器人领域的快速发展和复杂化,代码的复用性和模块化的需求原来越强烈,而已有的开源机器人系统又不能很好的适应需求.2010年Willow Garage公 ...
- 新手教程:建立网站的全套流程与详细解释
新手教程:建立网站的全套流程与详细解释 你要是 Baidu 这个话题,得到的结果八成都是广告--他们都会告诉你,"嘿,我(或某公司)这里可以建网站,傻瓜式的哟,快来投奔我吧!" 新 ...
- ESP-01S开发环境搭建及新手教程点灯教程全解详细配图(ESP8266-01s)
ESP-01S开发环境搭建及新手教程点灯教程全解相当详细(ESP8266-01s) 一.模组简介 二.开发工具 三.开发软件 四.点亮第一盏灯 五.至此完成了ESP-01S在arduino开发环境下点 ...
- Clang 新手教程来啦!
长话短说! 这篇新手教程会让你弄清楚什么是clang.clang AST.clang plugins 和clang tools 等等,让你大概知道clang 可以解决什么问题,而且小白也是可以用cla ...
最新文章
- Xamarin SimplerCursorAdapter 适配器(三)
- KiFastCallEntry() 机制分析
- requests---requests简介
- 听说你的项目中仅这些资源就卡成了翔?看看他们怎么做!
- VirtualAlloc 申请可执行内存
- 重温java web过滤器filter
- Ubuntu 迁移 /tmp 到别的硬盘
- [HAOI2008]移动玩具
- java中fis和fos_java中-的流-与操作
- Grafana密码重置为admin
- oracle实现aes解密_Oracle的AES加密与解密用法
- iOS 动态添加属性方法
- 解决无线网连不上的问题
- 【危险品识别】基于matlab颜色直方图危险品识别【含Matlab源码 470期】
- 西门子plc语句表是c语言吗,三菱、西门子PLC常用语句表,速来收!
- SPSS入门教程—对数据进行去重操作的相关方法
- teamviewer常用命令
- 回撤率 python_最大回撤和最大回撤率的区别?
- 常规调幅系统matlab结果,matlab课程设计参考题目
- 【Windows】回收站添加快捷键B