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

萬星星@豌豆莢 歡迎加入我們
一個吃軟飯的男人!!!!!我只想寫程序####
微博:http://weibo.com/wanlianwen
posts - 172,  comments - 1253,  trackbacks - 0

本命年沒穿紅內褲,大年初一被狗咬,慘,所以大家本命年切記要穿,否則會倒霉的!!!

去年年底寫一個配置文件(XML格式),第一次直接用MSXML,勉強實現,代碼冗余且雜亂,剛寫好,需求變了些,代碼很難維護,所以自己寫了一個封裝類,接口層都是STL類,用起來比較方便,這樣可以剩了類型轉換的麻煩,適合不熟悉COM的程序員。只封裝了部分功能,但是XML基本操作都可以實現。

目的:為了更方便的讀寫XML文檔,對MSXML4.0類進行封裝
            主要解決一些接口參數轉換問題
            使用前確保已經安裝好MSXML4.0且設置好環境
            適合VC開發語言

下面是類:

class WLWXML
{
public:
 WLWXML()
 {
  m_pIXMLDoc = NULL;
 }
 ~WLWXML()
 {
  SafeReleaseXMLDoc();
 }

 // 創建一個XML文檔,成功返回true,失敗返回false
 bool ConstructXMLFile();

 // 從文件加載一個XML文件,加載成功返回true,加載失敗返回false
 bool LoadFromXMLFile(const std::string& fileName);

 // 保存XML文件到fileName,成功返回true,失敗返回false
 bool SaveToXMLFile(const std::string& fileName);

 // 安全釋放XML文檔
 void SafeReleaseXMLDoc();

 // 獲得XML文件內容
 void GetXML(std::string& strXML);

 // 在文檔pIParentElem元素下添加nodeName節點,值為nodeValue
 bool AppendMemberNode( const std::string& nodeName,
        const std::string& nodeValue,
        IXMLDOMElement*    pIParentElem,
        IXMLDOMNode**    ppOutNewChild=NULL);
 bool AppendMemberNode( const std::string& nodeName,
        int       nodeValue,
        IXMLDOMElement*    pIParentElem,
        IXMLDOMNode**    ppOutNewChild=NULL);
 bool AppendMemberNode( const std::string& nodeName,
        long      nodeValue,
        IXMLDOMElement*    pIParentElem,
        IXMLDOMNode**    ppOutNewChild=NULL);
 bool AppendMemberNode( const std::string& nodeName,
        double      nodeValue,
        IXMLDOMElement*    pIParentElem,
        IXMLDOMNode**    ppOutNewChild=NULL);
 bool AppendMemberNode( const std::string& nodeName,
        bool      nodeValue,
        IXMLDOMElement*    pIParentElem,
        IXMLDOMNode**    ppOutNewChild=NULL);

 // 為元素pIParentElem添加屬性
 bool AppendAttributeNode(const std::string& nodeName,
        const std::string& nodeValue,
        IXMLDOMElement*  pIParentElem);
 bool AppendAttributeNode(const std::string& nodeName,
        int     nodeValue,
        IXMLDOMElement*  pIParentElem);
 bool AppendAttributeNode(const std::string& nodeName,
        long    nodeValue,
        IXMLDOMElement*  pIParentElem);
 bool AppendAttributeNode(const std::string& nodeName,
        double    nodeValue,
        IXMLDOMElement*  pIParentElem);
 bool AppendAttributeNode(const std::string& nodeName,
        bool    nodeValue,
        IXMLDOMElement*  pIParentElem);

 // 獲取pIParentElem元素下nodeName節點的值
 bool GetNodeValue( IXMLDOMNode*  pIParentElem,
       const std::string& nodeName,
       std::string&  nodeValue);
 bool GetNodeValue( IXMLDOMNode*  pIParentElem,
       const std::string& nodeName,
       int&    nodeValue);
 bool GetNodeValue( IXMLDOMNode*  pIParentElem,
       const std::string& nodeName,
       long&    nodeValue);
 bool GetNodeValue( IXMLDOMNode*  pIParentElem,
       const std::string& nodeName,
       double&    nodeValue);
 bool GetNodeValue( IXMLDOMNode*  pIParentElem,
       const std::string& nodeName,
       bool&    nodeValue);

 // 獲得節點pIParentElem的屬性
 bool GetAttributeNode(IXMLDOMNode*  pIParentElem,
        const std::string& nodeName,
        std::string&  nodeValue);
 bool GetAttributeNode(IXMLDOMNode*  pIParentElem,
        const std::string& nodeName,
        int&    nodeValue);
 bool GetAttributeNode(IXMLDOMNode*  pIParentElem,
        const std::string& nodeName,
        long&    nodeValue);
 bool GetAttributeNode(IXMLDOMNode*  pIParentElem,
        const std::string& nodeName,
        double&   nodeValue);
 bool GetAttributeNode(IXMLDOMNode*  pIParentElem,
        const std::string& nodeName,
        bool&    nodeValue);

 // 獲得文檔元素
 IXMLDOMElement* GetDocElem();
 
 // 獲得節點的nodeName孩子
 IXMLDOMNode* GetChildNode(IXMLDOMNode*  pIParentElem,
         const std::string& nodeName,
         std::string&  nodeValue);
protected:
private:
 IXMLDOMDocument2*    m_pIXMLDoc;  // XML文檔

};


類以及示例下載

posted on 2006-02-10 19:38 萬連文 閱讀(3148) 評論(5)  編輯 收藏 引用 所屬分類: 亂七八糟

FeedBack:
# re: 狗年第一篇-MSXML類封裝
2006-04-28 00:05 | weed
謝謝!正煩得很呢。。。用慣了c#讀寫xml,這個com太不爽了。  回復  更多評論
  
# re: 狗年第一篇-MSXML類封裝
2007-12-10 17:29 | dfdfds
vknbvcbmvcbvc
nvcbnbvnvc
n\cv
n  回復  更多評論
  
# re: 狗年第一篇-MSXML類封裝
2008-09-10 19:17 | Hyper
你說的設置好環境,怎么設置啊.初學者請教了  回復  更多評論
  
# re: 狗年第一篇-MSXML類封裝
2008-09-10 19:32 | 萬星星
就是包含msxml的頭文件以及lib啊,如果是vs2005似乎已經包含了,vc6默認是沒有。  回復  更多評論
  
# re: 狗年第一篇-MSXML類封裝
2008-09-11 15:15 | Hyper
這個lib怎么添加啊。謝謝啊,才上大一好多都不懂  回復  更多評論
  
簡歷下載
聯系我

<2007年3月>
25262728123
45678910
11121314151617
18192021222324
25262728293031
1234567

常用鏈接

留言簿(66)

隨筆分類

隨筆檔案

相冊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久人体大胆视频| 欧美日韩一区二区视频在线观看 | 欧美一区二区三区视频在线观看 | 亚洲婷婷综合久久一本伊一区| 久久综合伊人77777| 亚洲欧美另类在线| 国产欧美日韩三区| 久久精品91久久久久久再现| 午夜精品一区二区在线观看| 国产精品一卡二卡| 久久亚洲国产成人| 欧美77777| 一区二区毛片| 亚洲自拍高清| 亚洲第一成人在线| 亚洲理论在线观看| 国产精品捆绑调教| 久久影院午夜片一区| 欧美成人一区二区三区在线观看| 亚洲精选在线| 亚洲欧美日韩成人| 亚洲国产婷婷| 在线亚洲激情| **欧美日韩vr在线| 亚洲人成免费| 欧美三级网页| 老鸭窝亚洲一区二区三区| 久久综合九色99| 一区二区三区高清不卡| 在线一区二区视频| 在线播放豆国产99亚洲| 一本色道久久加勒比88综合| 国产主播在线一区| 亚洲六月丁香色婷婷综合久久| 国产欧美日韩在线| 亚洲国内精品在线| 国自产拍偷拍福利精品免费一| 亚洲激情在线观看| 国产一区二区三区不卡在线观看| 亚洲国产精品va在线看黑人| 国产精品一区二区三区久久久| 欧美国产日韩xxxxx| 国产嫩草一区二区三区在线观看| 欧美成年人网站| 国产精品一区二区欧美| 亚洲精品一线二线三线无人区| 国模叶桐国产精品一区| 99精品欧美一区二区蜜桃免费| 亚洲第一在线视频| 校园激情久久| 午夜精品视频一区| 欧美日韩一二三区| 亚洲第一福利视频| 亚洲高清免费| 久久久国产一区二区三区| 亚洲视频免费看| 欧美久久久久| 欧美黑人多人双交| 在线国产精品播放| 午夜精品一区二区三区在线播放 | 狠狠狠色丁香婷婷综合激情| 亚洲一卡久久| 亚洲欧美激情视频在线观看一区二区三区| 蜜臀久久99精品久久久画质超高清 | 久久国产乱子精品免费女| 亚洲欧美大片| 国产精品jvid在线观看蜜臀| 亚洲欧洲一区二区在线播放| 亚洲大片精品永久免费| 久久在线视频在线| 欧美成人精品在线| 在线视频成人| 欧美黑人在线观看| 亚洲精品一区二区三区婷婷月 | 亚洲福利在线观看| 老司机aⅴ在线精品导航| 免播放器亚洲一区| 亚洲大片在线观看| 欧美成人视屏| 99re6热只有精品免费观看| 一区二区三区不卡视频在线观看 | 欧美成人免费在线视频| 欧美激情一区二区三区四区 | 欧美日韩综合在线| 一区二区动漫| 亚洲在线免费| 国产中文一区| 欧美国产综合视频| 一区二区福利| 久久一二三区| 亚洲精品午夜| 国产精品日本精品| 久久精品国产99国产精品| 麻豆av福利av久久av| 亚洲国产成人精品女人久久久| 蜜桃av噜噜一区二区三区| 日韩一级精品视频在线观看| 性做久久久久久| 亚洲第一精品电影| 免费视频一区| 亚洲一区二区三区免费视频| 免费亚洲电影在线观看| 一区二区三欧美| 国产婷婷精品| 欧美—级a级欧美特级ar全黄| 亚洲私人黄色宅男| 免费不卡在线视频| 亚洲一二三区精品| 激情欧美日韩| 国产精品久久九九| 蜜桃av噜噜一区| 亚洲在线一区二区| 欧美激情亚洲一区| 久久国产成人| 99国内精品久久久久久久软件| 国产精品免费久久久久久| 久久一区中文字幕| 亚洲在线视频观看| 亚洲精品美女91| 另类国产ts人妖高潮视频| 亚洲一区bb| 亚洲乱码日产精品bd| 国产视频久久久久久久| 欧美区国产区| 美女视频黄 久久| 午夜精品久久久久久久蜜桃app | 欧美主播一区二区三区| 99国产精品久久久久老师| 精品av久久707| 国产精品久久久久7777婷婷| 蜜臀av一级做a爰片久久| 久久成人资源| 亚洲欧美一区二区三区久久| 亚洲欧洲精品天堂一级| 免费在线成人av| 久久精品一二三区| 欧美一区二区三区久久精品| 亚洲一区二区网站| 亚洲乱码国产乱码精品精98午夜| 亚洲第一区在线观看| 国产视频一区在线| 国产精品一级| 国产精品私拍pans大尺度在线 | 先锋影音国产一区| 亚洲男人影院| 午夜伦欧美伦电影理论片| 亚洲一区二区三区免费观看| 亚洲天堂av图片| 日韩一区二区精品葵司在线| 欧美高清不卡在线| 久久综合国产精品| 免费在线看成人av| 欧美电影免费观看高清完整版| 久久综合久久综合九色| 狂野欧美一区| 欧美好吊妞视频| 亚洲精品欧美日韩| 日韩午夜av在线| 亚洲一卡久久| 久久国内精品视频| 久久夜色精品国产噜噜av| 噜噜噜久久亚洲精品国产品小说| 麻豆精品在线播放| 欧美理论电影在线播放| 国产精品国产三级国产普通话三级 | 1024成人| 99视频精品免费观看| 亚洲特级毛片| 久久精品一区二区三区中文字幕| 久久免费黄色| 亚洲国产一区二区精品专区| 亚洲精品美女在线观看播放| 宅男精品视频| 久久久久高清| 欧美激情第3页| 国产精品国产成人国产三级| 国产一区二区欧美日韩| 最新69国产成人精品视频免费| 一本久道久久综合狠狠爱| 小黄鸭视频精品导航| 久久久久se| 亚洲精品国久久99热| 亚洲视频axxx| 久久久久亚洲综合| 欧美日韩精品一本二本三本| 国产精品系列在线播放| 亚洲电影免费观看高清完整版在线观看 | 亚洲一区免费| 久久精品成人| 亚洲福利视频专区| 亚洲女女女同性video| 麻豆久久久9性大片| 国产精品自在在线| 日韩一级免费| 美女被久久久| 亚洲一区在线直播| 欧美大秀在线观看| 激情久久久久久| 欧美在线播放一区| 亚洲欧洲精品一区二区三区|