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

            山寨:不是最好的,是最適合我們的!歡迎體驗山寨 中文版MSDN

            Blog @ Blog

            當華美的葉片落盡,生命的脈絡(luò)才歷歷可見。 -- 聶魯達

            常用鏈接

            統(tǒng)計

            積分與排名

            BBS

            Blog

            Web

            最新評論

            XML字符串的讀寫操作函數(shù)及示例程序[轉(zhuǎn)]

            // OpXML.cpp : Defines the entry point for the console application.

            //----------------------- Coded By Ronk --------------------------//
            //----------------------- 2005-07-17 --------------------------//


            #include 
            "stdafx.h"
            #include 
            <stdio.h>


            //---You must Setup the MSXML4.0 before using
            #import <msxml4.dll>
            using namespace MSXML2;

            void xmlread(char *ch1,char *ch2,char *ch3);//Read the xmlstr and Get the Text of the Element

            void xmlupdate(char *ch1,char *ch2,char *ch3);//Read the xmlstr and Update the Text of the Element

            int main(int argc, char* argv[])
            {
                
            char xmlstr[1024]="<inesmsg><msghead><version>LZD</version><root>ioio</root></msghead></inesmsg>";
                
            char strele[1024]="//version//";
                
            char textstr[1024]="NNYX";
                
            char value[1024];
                
                printf(
            "The xmlstr is :\n%s\n\n",xmlstr);
                
                xmlread(xmlstr,strele,value); 
            //befor Update
                printf("The Text of Element befor Update is: \n%s\n\n",value);
                
                xmlupdate(xmlstr,strele,textstr);
            //Change the Text of "<version>" with "NNYX"
                printf("The Updated xmlstr is :\n%s\n\n",xmlstr);
                
                xmlread(xmlstr,strele,value);
            //after Update
                printf("The Text of Element after Update is :\n%s\n\n",value);
                
                
            return 0;
            }

            void xmlread(char* msgstr,char* elestr,char *tex)
            {
                
            //Initialize
                CoInitialize(NULL);
                
                IXMLDOMDocumentPtr pXmlDoc;
                IXMLDOMNodePtr pXmlNode;
                
                HRESULT hr;
                hr 
            = pXmlDoc.CreateInstance(__uuidof(DOMDocument));
                
            if (FAILED(hr))
                {
                    printf(
            "Faild to Create XMLDom Instance !");
                    pXmlDoc
            =NULL;
                }
                
            else
                {
                    pXmlDoc 
            ->async = VARIANT_FALSE;
                    
                    
            //Load xmlmsg
                    _bstr_t xmlstr=(LPCSTR)msgstr;
                    
                    
            if (!(pXmlDoc->loadXML(msgstr)))
                    {
                        printf(
            "Failed to Load xmlstr:\n%s\n",(LPCSTR)pXmlDoc->parseError->Getreason());
                        pXmlDoc
            =NULL;
                    }
                    
            else
                    {
                        
            //Locate the Element
                        _bstr_t str=(LPCSTR)elestr;
                        pXmlNode 
            = pXmlDoc ->selectSingleNode(elestr);
                        
                        
            if(FAILED(pXmlNode))
                            printf(
            "Faild to Locate the Element \n%s\n",str);
                        
            else
                        {
                            
            //Read the Text of Element
                            strcpy(tex,(LPCSTR)pXmlNode ->text);
                            
                            
            //Realese
                            pXmlDoc.Release();
                            pXmlNode.Release();
                        }
                    }
                }
            }

            void xmlupdate(char *msgstr,char *elestr,char *upstr)
            {
                
            //---Initialize
                CoInitialize(NULL);
                
                IXMLDOMDocumentPtr pXmlDoc;
                IXMLDOMNodePtr pXmlNode;
                
                HRESULT hr;
                hr 
            = pXmlDoc.CreateInstance(__uuidof(DOMDocument));
                
            if (FAILED(hr))
                {
                    printf(
            "Faild to Create XMLDom Instance !");
                    pXmlDoc
            =NULL;
                }
                
            else
                {
                    pXmlDoc 
            ->async = VARIANT_FALSE;
                    
                    
            //Load xml str
                    _bstr_t xmlstr=(LPCSTR)msgstr;
                    
                    
            if (!(pXmlDoc->loadXML(msgstr)))
                    {
                        printf(
            "Failed to load xmlstr:\n%s\n",(LPCSTR)pXmlDoc->parseError->Getreason());
                        pXmlDoc
            =NULL;
                    }
                    
            else
                    {
                        
            //Located the Element
                        _bstr_t str=(LPCSTR)elestr;
                        pXmlNode 
            = pXmlDoc ->selectSingleNode(elestr);
                        
                        
            if (FAILED(pXmlNode))
                            printf(
            "Failed to Locate the Element \n%s\n",str);
                        
            else
                        {
                            
            //Update the Text of the Element
                            pXmlNode->text = upstr;
                            
                            
            //Get the New xmlstr
                            strcpy(msgstr,(LPCSTR)pXmlDoc->xml);
                            
                            
            //Realese
                            pXmlDoc.Release();
                            pXmlNode.Release();
                        }
                    }
                }
            }

            posted on 2009-06-22 18:01 isabc 閱讀(861) 評論(1)  編輯 收藏 引用

            評論

            # re: XML字符串的讀寫操作函數(shù)及示例程序[轉(zhuǎn)] 2011-03-17 17:32 buy an essay online

            Numbers of famous guys didn't have got cool writing skillfulness.  回復  更多評論   

            廣告信息(免費廣告聯(lián)系)

            中文版MSDN:
            歡迎體驗

            成人亚洲欧美久久久久| 亚洲中文久久精品无码| 久久久久亚洲精品中文字幕| 精品久久久久久久久久久久久久久| 久久精品亚洲欧美日韩久久| 波多野结衣AV无码久久一区| 国产精品久久久久影院嫩草 | 亚洲综合久久综合激情久久| 久久人人超碰精品CAOPOREN| 97久久香蕉国产线看观看| 久久99热这里只有精品国产| 久久精品国产亚洲av水果派| 性做久久久久久免费观看| 日韩一区二区久久久久久| 久久精品国产亚洲av麻豆小说| 亚洲人成无码久久电影网站| 日韩欧美亚洲综合久久影院d3| 乱亲女H秽乱长久久久| 日韩久久无码免费毛片软件| 久久免费线看线看| 国产精品久久免费| 久久人人妻人人爽人人爽| 久久中文字幕人妻丝袜| 亚洲国产成人精品久久久国产成人一区二区三区综 | 久久国产高清字幕中文| 久久婷婷五月综合97色| A级毛片无码久久精品免费| 无码8090精品久久一区| 久久婷婷五月综合成人D啪| 久久久久国产| 四虎影视久久久免费| 亚洲人成网站999久久久综合| 亚洲国产成人乱码精品女人久久久不卡| 99久久99久久精品国产片果冻| 亚洲一本综合久久| 九九久久精品无码专区| 三级片免费观看久久| 亚洲精品乱码久久久久久自慰| 国产美女亚洲精品久久久综合| 少妇高潮惨叫久久久久久| 国产精品一区二区久久国产|