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

            yuhuanworkroom

            常用鏈接

            統計

            最新評論

            XPath 校驗工具

                    XML是一套定義語義標記的規則,這些標記將文檔分成許多部件并對這些部件加以標識。由于XML具備諸多的優點,XML被越來越為廣泛地使用。

                    我們開發員更是會經常使用XML來存儲信息或者交換數據,而XPath是用來高效處理XML文檔的方法。XPath是種可以在XML文檔中查找信息的語言,可以通過XPath表達式在XML文檔中快速定位。相比一層層節點的遞歸來說,它的代碼可讀性更高,易維護,效率高。而且XQuery和XPointer也是建立在XPath之上,所以在應用開發中使用XPath頻率會比較高。
                    寫一個簡單的XPath到不是一件難事,或許也可以不調試跟蹤。但對于復雜的文檔或XPath表達式,最好先驗證,難通過跟蹤調試的方式來確定正確性的方式是不可取的。XPath Tester工具就是一個驗證XPath正確性的工具,它是基于MSXML實現。

            安裝環境:
            OS:windows xp及以上。

                    這個工具的實現較簡單,可以很容易地寫出來。稍難的可能是處理名字空間的方法,下面附上這部份源碼。
             1     LPCTSTR g_szSelectionLanguage = _T("SelectionLanguage");
             2     LPCTSTR g_szXPath =_T("XPath");
             3     LPCTSTR g_szXmlns = _T("xmlns:");
             4     LPCTSTR g_szSelectionNamespaces =_T("SelectionNamespaces");
             5     TCHAR g_cComma = _T(',');
             6 
             7     void ParseXmlns(MSXML2::IXMLDOMDocument2Ptr &docPtr, LPCTSTR szXmlns)
             8     {
             9         int nLen;
            10         if(!szXmlns ||  (nLen = _tcslen(szXmlns))== 0)
            11         {
            12             return;
            13         }
            14 
            15         docPtr->setProperty(g_szSelectionLanguage, g_szXPath);
            16         const short BUFFLEN = 200;
            17         TCHAR szNameBuf[BUFFLEN];
            18         TCHAR *pStart = const_cast<TCHAR*>(szXmlns);
            19         TCHAR *pEnd = _tcschr(pStart, g_cComma);
            20
            21         bool bQuit = false;
            22         while (nLen && !bQuit)
            23         {
            24             if(!pEnd)
            25             {
            26                 pEnd = pStart + nLen;
            27                 bQuit = true;
            28             }
            29             ZeroMemory(szNameBuf, sizeof(szNameBuf));
            30             _tcsncpy_s(szNameBuf, BUFFLEN, pStart, pEnd - pStart);
            31             if(_tcsnicmp(szNameBuf, g_szXmlns, _tcslen(g_szXmlns)) == 0)
            32             {
            33                 docPtr->setProperty(g_szSelectionNamespaces, szNameBuf);
            34             }
            35 
            36             pStart = pEnd + 1;
            37             pEnd = _tcschr(pStart, g_cComma);
            38             nLen = _tcslen(pStart);
            39         }
            40     }

            下載: http://www.91box.net/?BOERZFW76FD5GAOJNYUI
            MD5:    96046c78f572f669aa8c600c1a6b06e5

            posted on 2009-10-15 23:37 yuhuan 閱讀(3105) 評論(0)  編輯 收藏 引用 所屬分類: SoftWare

            日韩AV毛片精品久久久| 无码人妻久久一区二区三区蜜桃 | 久久精品国产99国产精品澳门| 久久最新免费视频| 国产综合免费精品久久久| 久久久久久久99精品免费观看| 国产亚洲色婷婷久久99精品| 亚洲国产精品18久久久久久| 无码人妻久久一区二区三区免费| 午夜天堂av天堂久久久| 久久综合国产乱子伦精品免费| 伊人久久大香线焦AV综合影院| 久久精品国产亚洲av麻豆蜜芽| 午夜精品久久久久久影视riav| 2021国内精品久久久久久影院| 国色天香久久久久久久小说| 久久久久人妻一区二区三区 | 久久久久国产亚洲AV麻豆| 欧美久久一级内射wwwwww.| 精品久久久久久久国产潘金莲| 色综合久久久久综合体桃花网| 久久久久无码精品国产| 99久久人妻无码精品系列蜜桃| 精品国产青草久久久久福利| 欧美亚洲另类久久综合婷婷| 久久精品国产清自在天天线| 国产一区二区精品久久| 无码任你躁久久久久久| 国产精品久久久久AV福利动漫| 久久久久国产一区二区| 国内精品久久久久影院薰衣草 | 国产亚洲精品久久久久秋霞 | 久久久国产精品网站| 亚洲国产精品无码久久九九| 久久久精品国产sm调教网站| 久久国产精品免费一区| 久久青青草原精品国产| 伊人热热久久原色播放www| 72种姿势欧美久久久久大黄蕉| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | AV狠狠色丁香婷婷综合久久|