c++ 使用TinyXML 读取xml数据
来源:互联网 发布:jquery.js文件下载 编辑:程序博客网 时间:2024/06/05 16:18
1 TinyXml 下载地址 点击打开链接
2 下载完成后解压缩 将tinystr.cpp ,tinystr.h,tinyxml.cpp,tinyxml.h,tinyxmlerror.cpp,tinyxmlparser.cpp 加入工程中
3
#include<iostream>#include "tinystr.h"#include "tinyxml.h"#include<string>#include<windows.h>using namespace std;#define MAX_PATH1 100/*获取exe文件路径*/string GetAppPath(){ char spath[MAX_PATH1] = {0}; GetModuleFileName(NULL,spath,MAX_PATH); string path(spath); cout<<path<<endl; int m= path.find_last_of('\\'); path = path.substr(0,m); cout<<path<<endl; return path; }/*创建一个xml数据*/bool CreateXmlFile(string& szFileName){ try { TiXmlDocument *myDocument = new TiXmlDocument(); TiXmlElement *RootElement = new TiXmlElement("Persons"); myDocument->LinkEndChild(RootElement); TiXmlElement *PersonElement = new TiXmlElement("Person"); RootElement->LinkEndChild(PersonElement); PersonElement->SetAttribute("ID",1); TiXmlElement *PersonName = new TiXmlElement("name"); TiXmlElement *PersonAge = new TiXmlElement("age"); PersonElement->LinkEndChild(PersonName); PersonElement->LinkEndChild(PersonAge); TiXmlText *NameContent = new TiXmlText("小家"); TiXmlText *AgeContent = new TiXmlText("23"); PersonName->LinkEndChild(NameContent); PersonAge->LinkEndChild(AgeContent); string spath = GetAppPath(); spath += "\\"; spath += szFileName; myDocument->SaveFile(spath.c_str()); } catch (string e) { return false; } return true;}bool ReadXmlFile(string& szFileName){try{ string apppath = GetAppPath(); apppath += "\\"; apppath += szFileName; TiXmlDocument *myDocument = new TiXmlDocument(apppath.c_str()); myDocument->LoadFile(); TiXmlElement *RootElement = myDocument->RootElement(); cout<<RootElement->Value()<<endl; TiXmlElement *FirstPerson = RootElement->FirstChildElement(); TiXmlElement *NameElement = FirstPerson->FirstChildElement(); TiXmlElement *AgeElement = NameElement->NextSiblingElement(); TiXmlAttribute *personattri = FirstPerson->FirstAttribute(); cout<<NameElement->FirstChild()->Value()<<endl; cout<<AgeElement->FirstChild()->Value()<<endl; cout<<personattri->Value()<<endl;}catch(string e){return false;}return true;}int main(){string str = "123.txt"; if(CreateXmlFile(str)) cout<<"ok"<<endl; else cout<<"0"<<endl; if(ReadXmlFile(str)) cout<<"ok"<<endl; else cout<<"0"<<endl; return 0;}
0 0
- c++ 使用TinyXML 读取xml数据
- 使用tinyxml读取xml文件
- C++使用tinyXml读取XML
- C++使用tinyXml读取XML
- C++使用tinyXml读取XML
- [C++]使用TinyXml讀寫Xml
- C++TinyXml读取解析xml文件
- C++读取XML,tinyXml的使用
- 使用TinyXML读取xml文件中文乱码
- tinyxml的xml读取
- tinyXML 简单读取xml示例
- 使用TinyXML解析XML
- 使用tinyxml生成xml
- 有关TinyXML使用的简单总结:来解析XML数据
- 有关TinyXML使用的简单总结:来解析XML数据
- 毕业论文中使用的XML读取和制造工具!!!C++ 使用TinyXML解析XML文件
- TinyXML-2解析XML数据
- C++:tinyxml的使用
- POJ 1379 模拟退火算法
- Generate Parentheses
- HDU 2063 过山车 (二分图的最大匹配)
- ACM之歌
- 素数求和问题
- c++ 使用TinyXML 读取xml数据
- linux 命令
- 判断整数转化为2进制之后1的个数
- 【图算法之二分图】HDU 1151---Air Raid
- ios设置小图标
- POJ 3264 RMQ Spare Table算法
- 面试知识点总结、积累
- HDU 1150 Machine Schedule(最小点覆盖)
- 结队开发之多storyboard