• <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>

            S.l.e!ep.¢%

            像打了激速一樣,以四倍的速度運轉,開心的工作
            簡單、開放、平等的公司文化;尊重個性、自由與個人價值;
            posts - 1098, comments - 335, trackbacks - 0, articles - 1
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            msxml 解析 xml

            Posted on 2009-04-27 00:12 S.l.e!ep.¢% 閱讀(446) 評論(0)  編輯 收藏 引用 所屬分類: MSXML

            #include <stdlib.h>
            #include <stdio.h>
            #include <atlbase.h>
            #import?? "msxml3.dll"??
            using?? namespace?? MSXML2;??

            void?? dump_com_error(_com_error?? &e)??
            {??
            ?printf("Error\n");??
            ?printf("\a\tCode?? =?? %08lx\n",?? e.Error());??
            ?printf("\a\tCode?? meaning?? =?? %s",?? e.ErrorMessage());??
            ?_bstr_t?? bstrSource(e.Source());??
            ?_bstr_t?? bstrDescription(e.Description());??
            ?printf("\a\tSource?? =?? %s\n",?? (LPCSTR)?? bstrSource);??
            ?printf("\a\tDescription?? =?? %s\n",?? (LPCSTR)?? bstrDescription);??
            }??


            int?? main(int?? argc,?? char*?? argv[])??
            {??
            ?CoInitialize(NULL);??
            ???
            ???
            ?try{??
            ??IXMLDOMDocumentPtr?? pXMLDoc;??
            ??HRESULT?? hr?? =?? pXMLDoc.CreateInstance(__uuidof(DOMDocument));??
            ??
            ??pXMLDoc->async?? =?? false;?? //?? default?? -?? true,??
            ??
            ??
            ??hr?? =?? pXMLDoc->load("c:\\stock.xml");??
            ??
            ??if(hr!=VARIANT_TRUE)??
            ??{??
            ???IXMLDOMParseErrorPtr???? pError;??
            ???
            ???pError?? =?? pXMLDoc->parseError;??
            ???_bstr_t?? parseError?? =_bstr_t("At?? line?? ")+?? _bstr_t(pError->Getline())?? +?? _bstr_t("\n")+?? _bstr_t(pError->Getreason());??
            ???MessageBox(NULL,parseError,?? "Parse?? Error",MB_OK);??
            ???return?? 0;??
            ??}??
            ??
            ??CComPtr<IStream>?? pStream;??
            ??hr?? =?? CreateStreamOnHGlobal(NULL,?? true,?? &pStream);??
            ??hr?? =?? pXMLDoc->save(pStream.p);??
            ??
            ??LARGE_INTEGER?? pos;??
            ??pos.QuadPart?? =?? 0;??
            ??
            ??//the?? key?? is?? to?? reset?? the?? seek?? pointer??
            ??pStream->Seek((LARGE_INTEGER)pos,?? STREAM_SEEK_SET,?? NULL);??
            ??
            ??IXMLDOMDocumentPtr?? pXMLDocNew;??
            ??hr?? =?? pXMLDocNew.CreateInstance(__uuidof(DOMDocument));??
            ??pXMLDocNew->async?? =?? false;??
            ??hr?? =?? pXMLDocNew->load(pStream.p);??
            ??if(hr!=VARIANT_TRUE)??
            ??{??
            ???IXMLDOMParseErrorPtr???? pError;??
            ???
            ???pError?? =?? pXMLDocNew->parseError;??
            ???_bstr_t?? parseError?? =_bstr_t("At?? line?? ")+?? _bstr_t(pError->Getline())?? +?? _bstr_t("\n")+?? _bstr_t(pError->Getreason());??
            ???MessageBox(NULL,parseError,?? "Parse?? Error",MB_OK);??
            ???return?? 0;??
            ??}??
            ??
            ?//?MessageBox(NULL,(LPTSTR)pXMLDocNew->xml,?? "XML?? content",MB_OK);??

            ??IXMLDOMNodeListPtr nodeptr;
            ??pXMLDocNew->get_childNodes(&nodeptr);

            ??long nodesize = 0;
            ??nodeptr->get_length(&nodesize);

            ??IXMLDOMNodePtr xmlnode;

            ??nodeptr->get_item(0, &xmlnode);

            ??????? CComBSTR?? a;
            ??xmlnode->get_baseName(&a);
            ??
            ??USES_CONVERSION;
            ??printf("%s\n", W2T(a));
            ??
            ?}??
            ?catch(_com_error?? &e)??
            ?{??
            ??dump_com_error(e);??
            ?}??
            ?CoUninitialize();??
            ???
            ?return?? 0;??
            }??

            ?

            亚洲午夜无码久久久久| 亚洲午夜精品久久久久久浪潮| 久久精品夜夜夜夜夜久久| 久久久久人妻一区精品性色av| 久久99国产精品久久久| 国产午夜精品久久久久九九电影 | 亚洲精品国产美女久久久| 国内精品久久久久影院日本| 精品国产热久久久福利| 久久香综合精品久久伊人| 久久国产福利免费| 日韩精品久久无码人妻中文字幕 | 久久人人爽人人爽AV片| 久久精品中文无码资源站| 狠狠色丁香久久婷婷综合五月 | 日本精品久久久中文字幕| 久久久久久曰本AV免费免费| 国产呻吟久久久久久久92| 日韩精品久久久久久久电影蜜臀| 狠狠色伊人久久精品综合网| 国产精品99久久99久久久| 中文字幕久久亚洲一区| 久久亚洲国产精品123区| 日韩精品国产自在久久现线拍| 久久久久久A亚洲欧洲AV冫| 久久精品国产精品国产精品污| 久久精品99久久香蕉国产色戒| 久久婷婷国产剧情内射白浆| 午夜福利91久久福利| 久久久久久久久久免免费精品| 国产精品午夜久久| 国产高潮国产高潮久久久91 | 韩国免费A级毛片久久| 中文字幕乱码人妻无码久久 | 69SEX久久精品国产麻豆| 亚洲国产美女精品久久久久∴| 精品久久久无码21p发布| 久久久久亚洲AV成人网人人网站 | 狠狠精品干练久久久无码中文字幕| 国产精品福利一区二区久久| 久久香蕉国产线看观看99|