从网上找一以几个例子,整理到一起了,方便查找使用
//1 创建一个XML的文档对象,也可以直接保存到字符串
TiXmlDeclaration * xmlDec = new TiXmlDeclaration("1.0", "UTF-8","");
TiXmlDocument *myDocument = new TiXmlDocument();
myDocument->LinkEndChild(xmlDec);
//创建一个根元素并连接。
TiXmlElement *RootElement = new TiXmlElement("ipcam");
myDocument->LinkEndChild(RootElement);
//创建一个Person元素并连接。
TiXmlElement *PersonElement = new TiXmlElement("operation");
RootElement->LinkEndChild(PersonElement);
//创建method元素、name元素并连接。
TiXmlElement *NameElement = new TiXmlElement("method");
TiXmlElement *AgeElement = new TiXmlElement("name");
PersonElement->LinkEndChild(NameElement);
PersonElement->LinkEndChild(AgeElement);
TiXmlText *NameContent = new TiXmlText("return");
TiXmlText *AgeContent = new TiXmlText("pan");
NameElement->LinkEndChild(NameContent);
AgeElement->LinkEndChild(AgeContent);
//保存到文件
myDocument->SaveFile("1.xml");
//输出到字符串的一种方法
TiXmlPrinter printer;
myDocument->Accept(&printer);
fprintf( stdout, "%s", printer.CStr() );
//屏幕输出的一种方法
std::cout;
//检查是否是我们想要的字符串。
cout << printer.CStr() << endl;
2 解析输入的字符串
{
char* strGet =
"<?xml version=/"1.0/" encoding=/"utf-8/"?>/
<ipcam >/
<operation>/
<method>get</method>/
<name>pan</name>/
</operation>/
</ipcam>";
TiXmlDocument* myDocument = new TiXmlDocument();
myDocument->Parse(strGet);
TiXmlElement* RootElement = myDocument->RootElement(); //ipcam
cout << RootElement->Value() << endl;
//获得operation节点。
TiXmlElement *operation = RootElement->FirstChildElement();
cout << operation->Value() << endl;
// 取method
TiXmlElement* method = operation->FirstChildElement();
cout << method->Value() << endl;
TiXmlElement* name = method->NextSiblingElement();
cout << name->Value() << endl;
delete myDocument;
myDocument = NULL;
}
更多技术文章请参见我的个人网站:http://www.joyvc.cn