青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Benjamin

靜以修身,儉以養(yǎng)德,非澹薄無(wú)以明志,非寧?kù)o無(wú)以致遠(yuǎn)。
隨筆 - 398, 文章 - 0, 評(píng)論 - 196, 引用 - 0
數(shù)據(jù)加載中……

WM5.0下如何利用微軟的MSXML解析.XML文件

MSXL是Microsoft XML 分析器,是基于COM的,如果是在Windows平臺(tái)用起來(lái)比較方便。WM5.0也有MSXML,不用用法和其他Windows平臺(tái)下還是有些差異的。
首先要包含頭文件“Msxml2.h”,下面是代碼:
IXMLDOMDocument *pDoc = NULL;
 IXMLDOMNodeList *pNodelist = NULL;

 IXMLDOMNode *pNode = NULL;
 IXMLDOMElement *pRootElement = NULL;

 if(SUCCEEDED(CoInitializeEx(NULL,COINIT_MULTITHREADED)))//初始化COM組件
 {
  if(SUCCEEDED(CoCreateInstance(CLSID_DOMDocument,NULL,CLSCTX_INPROC_SERVER | CLSCTX_LOCAL_SERVER,IID_IXMLDOMDocument,(void**)&pDoc)))
  {
   VARIANT vFile;
   vFile.vt = VT_BSTR ;
   VARIANT_BOOL vBool;

   vFile.bstrVal = SysAllocString(FileName);//.XML文件名

   pDoc->load(vFile,&vBool);//加載XML文件
   if(vBool != VARIANT_TRUE)
    return ;
   /////////////////////////
   HRESULT hr; 
   hr = pDoc->get_documentElement(&pRootElement);
   if(SUCCEEDED(hr))
   {
    hr = pRootElement->QueryInterface(IID_IXMLDOMNode,(void**)&pNode);//獲取XML文件的根節(jié)點(diǎn)
    if(SUCCEEDED(hr))
    {
     BSTR bsxml;
     //解析XML文件,一層一層的解析
     pNode->hasChildNodes(&vBool);

     if(vBool == VARIANT_TRUE)
     {
      hr = pNode->get_nodeName(&bsxml);

      //獲取子節(jié)點(diǎn)的個(gè)數(shù)
      long value;
      pNode->get_childNodes(&pNodelist);
      pNode->Release();
      pNodelist->get_length(&value);

      for(int k = 0; k < value; ++ k)
      {
       BSTR bsxml1;
       pNodelist->get_item(k,&pNode);
       pNode->get_nodeName(&bsxml1);


       IXMLDOMNodeList *pSubNodelist = NULL;

       //獲取孫節(jié)點(diǎn)的個(gè)數(shù)
       pNode->get_childNodes(&pSubNodelist);
       pNode->Release();
       long leng;
       pSubNodelist->get_length(&leng);

       if (leng > 0)
       {

        IXMLDOMNode *pSubNode = NULL;

               //解析最下層的節(jié)點(diǎn)
        for(int i = 0; i < leng; ++i)
        {

         pSubNodelist->get_item(i,&pSubNode);
         pSubNode->get_nodeName(&bsxml);

  //判斷節(jié)點(diǎn)的屬性,如果是注釋屬性,則放棄
         DOMNodeType           ntValue;
        pSubNode->get_nodeType((&ntValue);
        if(NODE_COMMENT == ntValue)//也可以判斷其他的屬性,具體的查看MSDN
             continue;;
        

         //獲取節(jié)點(diǎn)的屬性個(gè)數(shù)
         IXMLDOMElement* pElement = (IXMLDOMElement*)pSubNode;
         IXMLDOMNamedNodeMap* pMap;
         pElement->get_attributes(&pMap);
         pSubNode->Release();

         long len;
         pMap->get_length(&len);

         //循環(huán)讀取節(jié)點(diǎn)的各個(gè)屬性(值和名字)
         for(int j = 0; j < len; ++j)
         {
         //如果還有下層的節(jié)點(diǎn),繼續(xù)循環(huán)

          IXMLDOMNode* nameItem;
          VARIANT var;
          pMap->get_item(j,&nameItem);

          //獲取屬性名
          BSTR NAME;
          nameItem->get_nodeName(&NAME);


          //獲取屬性值
          nameItem->get_nodeValue(&var);
          LPWSTR VAL = var.bstrVal;

          int a = 9;

         }

        }
        pSubNodelist->Release();
       }
      }
      pNodelist->Release();
     }
     else
      pNode->Release();
    }
   }
   //////////////////////////
   pDoc->Release();
  }
  CoUninitialize();

 }

上面的代碼可以用于win32和MFC工程,比較方便。 注意:這個(gè)COM的釋放比較費(fèi)時(shí),不可頻繁的使用,如果使用比較頻繁,可能出現(xiàn)內(nèi)存泄露。

posted on 2008-11-01 22:27 Benjamin 閱讀(1703) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): PDA/PPC開(kāi)發(fā)

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美国产专区| 亚洲综合国产| 一二三四社区欧美黄| 免费久久99精品国产自| 久久精品国产综合| 久久久噜噜噜久久久| 裸体歌舞表演一区二区 | 亚洲一区二区动漫| 午夜电影亚洲| 久久一区中文字幕| 亚洲国产毛片完整版| 亚洲高清在线观看| 日韩视频国产视频| 亚洲欧美成人| 久久在线观看视频| 欧美日韩一区二区高清| 国产欧美一区二区白浆黑人| 国产在线乱码一区二区三区| 亚洲国产成人高清精品| 亚洲网站在线播放| 久久精品一区二区三区中文字幕| 欧美成人精品激情在线观看| 日韩一级大片在线| 久久精品国产精品 | 国产曰批免费观看久久久| 一区精品在线| 亚洲视频一区二区免费在线观看| 久久国产精品一区二区三区| 亚洲国产欧美日韩另类综合| 亚洲欧洲av一区二区| 欧美国产日韩a欧美在线观看| 国产精品国产三级国产普通话蜜臀| 国产在线成人| 亚洲在线中文字幕| 欧美肥婆bbw| 欧美一区二区成人6969| 欧美视频一区在线观看| 亚洲丁香婷深爱综合| 久久xxxx| 亚洲天堂av图片| 欧美精品日韩| 亚洲三级国产| 免费日韩成人| 欧美一级夜夜爽| 国产精品久久久久高潮| 日韩视频在线观看国产| 久久影视精品| 欧美在线观看日本一区| 国产精品国产馆在线真实露脸| 亚洲国产精品一区二区www在线| 久久久国产成人精品| 午夜精品在线| 国产伦精品一区二区三区视频孕妇| 亚洲精品一区二区三区樱花| 美女精品视频一区| 欧美激情第9页| 亚洲免费影视| 亚洲黄色免费网站| 欧美一区二区免费观在线| 亚洲高清资源| 久久综合久色欧美综合狠狠| 国精品一区二区| 久久久久国产精品一区二区| 亚洲一区二区三区成人在线视频精品| 欧美久久久久免费| 一本综合精品| 一本色道久久99精品综合 | 欧美亚洲色图校园春色| 国产欧美精品日韩区二区麻豆天美| 亚洲尤物在线视频观看| aa国产精品| 国产精品美女一区二区在线观看| 亚洲免费一级电影| 亚洲一区综合| 激情综合五月天| 欧美高清在线观看| 欧美国产91| 亚洲欧美综合另类中字| 欧美一区二区三区免费观看| 狠狠爱成人网| 亚洲精品视频二区| 国产精品久久网| 久久精品国产96久久久香蕉 | 欧美日韩一区二区在线观看| 亚洲欧美成人一区二区三区| 久久福利影视| 亚洲精品国产精品乱码不99按摩| 亚洲精品一区中文| 国产日本欧美一区二区| 欧美 日韩 国产精品免费观看| 免费观看在线综合| 亚洲欧美一区二区三区久久| 久久精品亚洲乱码伦伦中文| 亚洲日本欧美天堂| 亚洲欧美日本日韩| 亚洲精品欧美激情| 午夜精品一区二区三区电影天堂| 亚洲电影天堂av| 一本一本a久久| 黄色精品在线看| 99伊人成综合| 伊人久久大香线| 一区二区三区日韩精品视频| 在线播放日韩欧美| 亚洲欧美久久久| 久久天天综合| 性亚洲最疯狂xxxx高清| 欧美va亚洲va日韩∨a综合色| 亚洲图片欧美日产| 免费的成人av| 久久久久久有精品国产| 欧美视频日韩视频| 欧美国产综合视频| 国产欧美日韩视频在线观看| 亚洲精品欧美激情| 欧美成人免费播放| 欧美日韩国产综合视频在线| 久久中文字幕一区| 国产精品国产精品国产专区不蜜| 欧美成人官网二区| 国产一区二区三区久久久| 一本一本久久| 一本大道av伊人久久综合| 久久理论片午夜琪琪电影网| 欧美在线视频导航| 欧美午夜精品久久久久久孕妇| 亚洲国产成人精品女人久久久| 国产日韩在线播放| 亚洲午夜激情| 亚洲欧美日韩一区二区| 欧美日韩国产在线播放| 亚洲国产欧洲综合997久久| 亚洲高清久久久| 亚洲一区二区伦理| 亚洲精华国产欧美| 亚洲激情在线播放| 中文av字幕一区| 欧美va天堂| 免费视频一区| 在线精品在线| 欧美亚洲自偷自偷| 欧美一区二区啪啪| 国产欧美大片| 欧美一区二区三区免费看| 久久都是精品| 激情丁香综合| 美女999久久久精品视频| 欧美mv日韩mv国产网站app| 激情伊人五月天久久综合| 老司机午夜精品| 欧美成人精品1314www| 亚洲欧洲日韩女同| 欧美女同视频| 一区二区三区日韩在线观看| 亚洲欧美另类在线| 国产日韩亚洲欧美| 老**午夜毛片一区二区三区| 欧美福利专区| 中文精品视频一区二区在线观看| 欧美性猛交xxxx乱大交退制版 | 亚洲二区三区四区| 欧美激情久久久| 亚洲少妇中出一区| 久久躁日日躁aaaaxxxx| 亚洲精品中文在线| 欧美性视频网站| 久久精品中文字幕一区二区三区| 亚洲大片av| 亚洲一区影院| 尤物视频一区二区| 欧美日韩中文| 久久电影一区| 一区二区高清视频在线观看| 久久久人成影片一区二区三区观看| 在线观看国产成人av片| 欧美日韩专区| 久久久99免费视频| aa级大片欧美三级| 久久亚洲精品一区| 亚洲亚洲精品在线观看 | 久久蜜桃资源一区二区老牛| 在线观看视频一区二区| 欧美日韩在线视频一区| 欧美一区二区三区四区在线观看地址 | 亚洲欧美精品在线观看| 亚洲第一福利在线观看| 性亚洲最疯狂xxxx高清| 一区二区日韩精品| 1000部国产精品成人观看| 国产精品久久久久高潮| 欧美激情第二页| 久久综合给合| 欧美在线免费视频| 亚洲欧美不卡| 宅男噜噜噜66一区二区 | 激情婷婷亚洲| 国产精品乱子久久久久| 欧美国产精品v| 久久久国产成人精品| 午夜精品久久久久久久久久久久|