官方地址:http://rapidxml.sourceforge.net/
官方手册:http://rapidxml.sourceforge.net/manual.html
也可以在github上下载到别人上传的rapidxml:https://github.com/dwd/rapidxml
1.头文件
一般我们用到的头文件只有这三个
#include "rapidxml/rapidxml.hpp"
#include "rapidxml/rapidxml_utils.hpp" //rapidxml::file
#include "rapidxml/rapidxml_print.hpp" //rapidxml::print
2.常用方法:
1)加载一个XML文件的内容
方法:rapidxml::file<> valName(“filepath”);
定义:rapildxml_print_utils.hpp,这个头文件中定义了file类,这个类有两个成员函数data()和size()分别返回char*的xml文本内容和unsigned int型的文本数据长度
示例:
#include "rapidxml/rapidxml.hpp"
#include "rapidxml/rapidxml_utils.hpp" //rapidxml::file
#include "rapidxml/rapidxml_print.hpp" //rapidxml::print
#include <iostream>
// using namespace std;
int main(int argc, char const *argv[])
{
//读取xml
rapidxml::file<> fdoc("test.xml");
std::cout<<"************************powered by rapidxml**********************"<<std::endl;
std::cout<< fdoc.data()<< std::endl;
std::cout<<"length of xml:"<<fdoc.size()<<std::endl;
std::cout<<"******************************************************************"<<std::endl;
return 0;
}
运行一下!
2)加载DOM tree
类:xml_document
定义一个该类的对象doc
rapidxml::xml_document<> doc;
类的定义位置:rapidxml.hpp
类的成员函数:
1)parse(Ch *text) 将数据解析为DOM Tree
使用时doc.parse(text);
parseFlag指定格式,可以用’|’来组合使用
常用的parseFlag:
parseFlag为0表示