循环读取XML值 - VC/MFC / 基础类
<version_description>
<version>123</version>
<custom_id>456</custom_id>
<release_date>789</release_date>
<module>server</module>
</version_description>
读取上面version_description下面多有的值。
下面这段代码如何循环读取并用MessageBox单个显示呢?
xmlNode=(MSXML2::IXMLDOMElementPtr)(pXMLDoc->selectSingleNode(_T("//version_description")));
VARIANT varVal;
xmlNode->get_nodeTypedValue(&varVal);
CString strValue = (TCHAR*)(_bstr_t)varVal;
CString str(varVal.bstrVal);
MessageBox(strValue);
xml不就是个树啊, 呵呵, 那遍历树, 有中序, 前序, 后序啊. 算法google立马找到.
然后自己建立个CMap的映射, 关键字为xml节点名字(CString), 值为遍历到该节点的函数地址(&YourFunction(..))
相关问答:
内容如题。。在C#里改如何写呢?
本来思路是先比对节点名称,如是的话就保存要删除节点的下标放在数组里。然后循环删除,但发现。。当我删除第一个后,所有节点下标数量都发生改变。。
就不能再按照之前纪录的节点 ......
我有一个类似的xml的 string,想通过遍历怎么个xml 输出我想要的element的值
xml 为:
<Discover xmlns="urn:schemas-microsoft-com:xml-analysis">
<RequestType>DISCOVER_XML_ME ......
思路:要用c#生成一个播放机的播放列表的xml,例如:
<daty datys='2010-04-05' datye='2010-05-01' > //这是播放的日期段
<time times='01:12:00' timee='02:30:00'> ......
xml文件格式如下
XML code:
<?xml version="1.0" encoding="GB2312" ?>
<allproducts version="1.0">
<products>
<product name="prodId&quo ......
功能说明:Java servlet 把XML数据压缩后发送到PB用户端,PB收到数据后解压出来.
传输要经过Base64编码.
问题是:能收到数据但是解压不出来.想请教大家或者有什么好的办法?
PB可以用"zlibwapi.DLL" 解压
......