首先将这6项,添加到源文件中,否则会出错。
头文件包含
#include<string>
#include<iostream>
#include"tinystr.h"
#include"tinyxml.h"
根据标签名获取元素
TiXmlElement* 自定变量=上一级元素指针变量->FirstChildElement(标签名)
获取文本
要获取上图中的 cai
TiXmlElement* name=.................
name->GetText();或者
name->FirstChild();
XML文件:
<Persons>
<Person ID="1" sex="man">
<name>cai</name>
<age>20</age>
</Person>
<Person ID="2">
<name>lai</name>
<age>18</age>
</Person>
</Persons>
啊啊啊啊
#include<string>
#include<iostream>
#include"tinystr.h"
#include"tinyxml.h"
using namespace std;
int main()
{
TiXmlDocument doc;//创建文档元素
bool load_ok=doc.LoadFile("1.xml");//读取正确与否的bool型变量
if (!load_ok)
{
cout << "no such file" << endl;
exit(0);
}
/
TiXmlElement* root= doc.RootElement();//创建根元素指针,根元素为文档元素的子元素
/*if (!r) //若根元素空,退出。一般可不用
{
cout << "no root element" << endl;
doc.Clear();
exit(0);
}*/
cout << root->Value() << endl;//根元素名称
//
TiXmlElement* person = root->FirstChildElement();
cout << person->Value() << endl;//第一个子元素名称
TiXmlElement* name = person->FirstChildElement();
TiXmlElement* age = name->NextSiblingElement();
TiXmlAttribute* ID = person->FirstAttribute();
TiXmlAttribute* sex = ID->Next();
cout << name->FirstChild()->Value() << endl;
cout << name->GetText() << endl;
cout << ID->Value() << endl;
cout << sex->Value() << endl;
doc.Clear();
return 0;
}