循环读取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(..))
相关问答:
DataSet导出xml 批处理(循环)得怎么处理
XML文件
<A>
<B>
<C>
</C>
&nb ......
Private Sub Command1_Click()
Dim MyString() As String
Open "a.xml" For Binary As #1 ' 打开刚创建的文件。
ReDim MyString(LOF(1) - 1)
Put #1, , MyRecord ' 读入所有字符到变量中 ......
下面是XML初始文件内容
XML code:
<upd:Update xmlns:lar="http://schemas.microsoft.com/msus/2002/12/LogicalApplicabilityRules" xmlns:cmd="http://schemas.microsoft.com/msus/2002/12/Up ......
<?xml version="1.0" encoding="utf-8" ?>
<HuiSin>
<admin>100,100</admin>
<user>200,200</user>
怎样在这里添加一个新的呢?
< ......
先上代码
public override string SerializeToXml(object objArg)
{
if (objArg == null)
return "";
StringBuild ......