在 windows mobile 下使用msxml

在 windows mobile 下使用msxml

ID:24213416

大小:54.00 KB

页数:3页

时间:2018-11-13

在 windows mobile 下使用msxml_第1页
在 windows mobile 下使用msxml_第2页
在 windows mobile 下使用msxml_第3页
资源描述:

《在 windows mobile 下使用msxml》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、在WindowsMobile下使用MSXML  首先是头文件:#include<msxml.h>  初始化环境:hr=CoInitializeEx(NULL,0);  创建一个XMLDOM对象:IXMLDOMDocument*pDOM=NULL;hr=CoCreateInstance(CLSID_DOMDocument,NULL,CLSCTX_INPROC_SERVER

2、CLSCTX_LOCAL_SERVER,IID_IXMLDOMDocument,(LPVOID*)pDOM);  然后就是加载XML的内容,加载有两种方式,从文件加载和从字符串加载:

3、//从文件加载VARIANTvt;VARIANT_BOOLfSuccess;vt.vt=VT_BSTR;vt.bstrVal=SysAllocString(szPath);hr=pDOM->load(vt,fSuccess);//从字符串加载,第一个参数的类型是BSTR,不过LP->loadXML(xmlSource,fSuccess);  得到DOM对象后,可以直接创建新的元素、节点;也可以从根节点开始遍历;也可以选择自己想要的节点直接进行处理。  选择根节点:IXMLDOMElement*pRoot =NULL;hr=pDom->get_u

4、mentElement(pRoot);  从根节点开始遍历需要用到IXMLDOMNodeList接口:IXMLDOMNodeList*pNodeList =NULL;hr=pRoot->get_childNodes(pNodeList);IXMLDOMNode*  pNode =NULL;hr=pNodeList->nextNode(pNode);//注意这个返回值,你可以不管它,但不要用hr!=S_OK判断p;pNode);/}  从IXMLDOMNodeList中只能得到IXMLDOMNode接口,如果需要其它接口的操作,需要作点手脚。  1.接

5、口查询,在你你确切知道这个节点的类型的时候比较有用IXMLDOMElement*pElement=NULL;hr=pNode->QueryInterface(IID_IXMLDOMElement,(void**)pElement);  2.获得接口的真实类型,当你需要根据节点类型作不同处理的时候有用DOMNodeTypetype;Hr=pNode->get_nodeType(type);  需要选择部分节点进行访问有两种方法:HRESULTselectSingleNodes(BSTRqueryString,IXMLDOMNode**resultNod

6、e);HRESULTselectNodes(BSTRqueryString,IXMLDOMNode**resultNode);  第一个用来选在单一节点,第二个用来选择多个节点。查询的语法在XPath中有详细介绍。这两个方法对于IXMLDOMDocument,IXMLDOMNode,IXMLDOMElement都适用。其实只要知道IXMLDOMNode支持就可以了,其他两个接口都是它的派生接口。  比如要选择根节点下的所有Contact节点:hr=pRoot->selectNodes(TEXT(./Contact),pNodeList);  其它常用的操作

7、是删除元素、添加元素、设置和访问属性值:  删除元素可以使用:IXMLDOMNode::removeChild;  添加元素可以使用:IXMLDOMNode::appendChild;  设置属性可以使用:IXMLDOMElement::setAttribute;  访问属性可以使用:IXMLDOMElement::getAttribute;  创建元素、属性等可以使用IXMLDOMDocument的一系列create方法,比如创建元素的createElement等。这次最经常用到的两个是createElement和createProcessingInstruc

8、tion:IXMLDOMProcessingInstruction*pInstruction=NULL;IXMLDOMNode*pNel),TEXT(version='1.0'encoding='UTF-8'),pInstruction);_variant_tvt=pRoot;//插到根节点的前面pDom->insertBefore(pInstruction,vt,pNewNode);pInstruction->Release();pNewNode->Release()12下一页——感谢阅读这篇文章,..,;IX

9、MLDOMElement

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。