CMakeUP操作XML
发布时间:2020-12-16 08:47:17 所属栏目:百科 来源:网络整理
导读:1.创建XMLV0 std::string CreateXMLV1(){std::string strXML;CMarkup temXML;temXML.SetDoc("?xml version="1.0" encoding="UTF-8"?rn");temXML.AddElem("result");temXML.AddChildElem("version","1.0.0.1");temXML.AddChildElem("Response");temXML.
1.创建XMLV0 std::string CreateXMLV1() { std::string strXML; CMarkup temXML; temXML.SetDoc("<?xml version="1.0" encoding="UTF-8"?>rn"); temXML.AddElem("result"); temXML.AddChildElem("version","1.0.0.1"); temXML.AddChildElem("Response"); temXML.SetChildAttrib("desc","sp1d3r0x"); <span style="white-space:pre"> </span>//temXML.Save("D://test"); temXML.OutOfElem(); strXML = temXML.GetDoc(); return strXML; }这里返回的XML格式如下: <?xml version="1.0" encoding="UTF-8"?> <result> <version>1.0.0.1</version> <Response desc="sp1d3r0x"/> </result> 2.创建XMLV1 std::string CreateXMLV2() { std::string strXML; CMarkup temXML; temXML.SetDoc("<?xml version="1.0" encoding="UTF-8"?>rn"); temXML.AddElem("result"); temXML.IntoElem(); temXML.AddElem("version","1.0.0.1"); temXML.AddElem("name","sp1d3r0X"); temXML.OutOfElem(); temXML.OutOfElem(); strXML = temXML.GetDoc(); return strXML; } 返回的格式: <?xml version="1.0" encoding="UTF-8"?> <result> <version>1.0.0.1</version> <name>sp1d3r0X</name> </result>3.创建XMLV2 std::string CreateXMLV3() { std::string strXML; CMarkup temXML; temXML.SetDoc("<?xml version="1.0" encoding="UTF-8"?>rn"); temXML.AddElem("result"); temXML.AddChildElem("itemcount","4"); temXML.AddChildElem("version","1.0.0.1"); temXML.AddChildElem("item"); temXML.IntoElem(); temXML.AddChildElem("VMSEvents"); temXML.SetChildAttrib("timestamp","2015-12-25 17:26:30"); temXML.SetChildAttrib("type","12"); temXML.SetChildAttrib("subType","13"); temXML.SetChildAttrib("desc","事件描述"); temXML.OutOfElem(); strXML = temXML.GetDoc(); return strXML; }返回的格式: <?xml version="1.0" encoding="UTF-8"?> <result> <itemcount>4</itemcount> <version>1.0.0.1</version> <item> <VMSEvents timestamp="2015-12-25 17:26:30" type="12" subType="13" desc="事件描述"/> </item> </result> 4.解析XML,这部分就比较简单了,可直接看官方文档 bool ParseXML(std::string strBody) { bool bRet = true; CMarkup xml; xml.SetDoc(strBody); std::string strItemName(""); std::string strUserName(""); std::string strUserPwd(""); while (xml.FindChildElem("item")) { strItemName = xml.GetChildAttrib("name"); if (strItemName == "username") strUserName = xml.GetChildAttrib("value"); else if (strItemName == "password") strUserPwd = xml.GetChildAttrib("value"); } return bRet; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |