读书人

xml解析UserID//MSXML2方法如何把这个

发布时间: 2012-12-21 12:03:49 作者: rapoo

xml解析UserID//MSXML2方法怎么把这个节点的名字解析出来?
<?xml version="1.0" encoding="UTF-8" ?>
- <root>
<Title>修改用户</Title>
<EditUser UserID="admin" UserPassword="12345" UserTypeID="1" />
</root>
[最优解释]
看个例子


  IXMLDOMDocument *pIXMLDOMDocument = NULL;

  wstring strFindText (_T("author"));

  IXMLDOMNodeList *pIDOMNodeList = NULL;

  IXMLDOMNode *pIDOMNode = NULL;

  long value;

  BSTR bstrItemText;

  HRESULT hr;

  try

  {

  // 创建一个DOMDocument文档对象,并装载具体文档,相关代码省略。

  //下面的代码用来得到一个和标签名称author相关的所有的节点集合

  hr = pIXMLDOMDocument->getElementsByTagName(

  (TCHAR*)strFindText.data(), &pIDOMNodeList);

  SUCCEEDED(hr) ? 0 : throw hr;

  //是否正确的得到了指向IDOMNodeList的指针。

  hr = pIDOMNodeList->get_length(&value); //得到所包含的NODE节点的个数

  if(SUCCEEDED(hr))

  {

  pIDOMNodeList->reset();

  for(int ii = 0; ii < value; ii++)

  {

  //得到具体的一个NODE节点

  pIDOMNodeList->get_item(ii, &pIDOMNode);

  if(pIDOMNode )

  {

  pIDOMNode->get_text(&bstrItemText); //得到该节点相关的文本信息

  ::MessageBox(NULL, bstrItemText,strFindText.data(), MB_OK);

  pIDOMNode->Release();

  pIDOMNode = NULL;

  }

  }

  }

  pIDOMNodeList->Release();

  pIDOMNodeList = NULL;

  }

  catch(...)

  {

  if(pIDOMNodeList)

  pIDOMNodeList->Release();

  if(pIDOMNode)

  pIDOMNode->Release();

  DisplayErrorToUser();

  }



[其他解释]
yunsi !!!!!!!!!!!!!!!1
[其他解释]
UserID是属性,楼主直接用CMarkup类读出来属性就好了

读书人网 >VC/MFC

热点推荐