<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    本站不再更新,歡迎光臨 java開發(fā)技術網
    隨筆-230  評論-230  文章-8  trackbacks-0
    #include <libxml/parser.h>                                                           
    #include <libxml/xpath.h>                                                            
    #include <stdio.h>                                                                   
                                                                                         
    xmlDocPtr  getdoc (char *docname) {                                                  
     xmlDocPtr doc;                                                                     
     doc = xmlParseFile(docname);                                                       
                                                                                        
     if (doc == NULL ) {                                                                
      fprintf(stderr,"Document not parsed successfully. \n");                          
      return NULL;                                                                     
     }                                                                                  
                                                                                         
     return doc;                                                                        
    }                                                                                    
                                                                                         
    xmlXPathObjectPtr  getnodeset (xmlDocPtr doc, xmlChar *xpath){                       
                                                                                        
     xmlXPathContextPtr context;                                                        
     xmlXPathObjectPtr result;                                                          
                                                                                         
     context = xmlXPathNewContext(doc);                                                 
     if (context == NULL) {                                                             
      printf("Error in xmlXPathNewContext\n");                                         
      return NULL;                                                                     
     }                                                                                  
     result = xmlXPathEvalExpression(xpath, context);                                   
     xmlXPathFreeContext(context);                                                      
     if (result == NULL) {                                                              
      printf("Error in xmlXPathEvalExpression\n");                                     
      return NULL;                                                                     
     }                                                                                  
     if(xmlXPathNodeSetIsEmpty(result->nodesetval)){                                    
      xmlXPathFreeObject(result);                                                      
        printf("No result\n");                                                           
      return NULL;                                                                     
     }                                                                                  
     return result;                                                                     
    }                                                                                    
                                                                                         
                                                                                         
                                                                                         
                                                                                         
                                                                                         
    int main(int argc, char **argv) {                                                    
                                                                                         
     char *docname;                                                                     
     xmlDocPtr doc;                                                                     
     xmlChar *xpath = (xmlChar*) "http://keyword";                                           
     xmlNodeSetPtr nodeset;                                                             
     xmlXPathObjectPtr result;                                                          
     int i;                                                                             
     xmlChar *keyword;                                                                  
                                                                                       
     if (argc <= 1) {                                                                   
      printf("Usage: %s docname\n", argv[0]);                                          
      return(0);                                                                       
     }                                                                                  
                                                                                         
     docname = argv[1];                                                                 
     doc = getdoc(docname);                                                             
     result = getnodeset (doc, xpath);                                                  
     if (result) {                                                                      
      nodeset = result->nodesetval;                                                    
      for (i=0; i < nodeset->nodeNr; i++) {                                            
       keyword = xmlNodeListGetString(doc, nodeset->nodeTab[i]->xmlChildrenNode, 1);  
        printf("keyword: %s\n", keyword);                                              
        xmlFree(keyword);                                                              
      }                                                                                
      xmlXPathFreeObject (result);                                                     
     }                                                                                  
     xmlFreeDoc(doc);                                                                   
     xmlCleanupParser();                                                                
     return (1);                                                                        
    }                                                                                

    demo.xml

     <?xml version="1.0" encoding="UTF-8"?>                 
    <story>                                                
      <storyinfo>                                          
        <author>John Fleck</author>                        
        <datewritten>June 2, 2002</datewritten>            
        <keyword>example keyword裴</keyword>                
      </storyinfo>                                         
      <body>                                               
        <headline>This is the headline</headline>          
        <para>This is the body text.</para>                
      </body>                                              
    </story>                                                
        
                                                                                         

    懇請幫單擊一下廣告
    posted on 2010-08-23 12:06 有貓相伴的日子 閱讀(4056) 評論(2)  編輯  收藏 所屬分類: c&c++

    評論:
    # re: libxml中使用xpath解析xml文件[未登錄] 2011-04-13 17:27 | a
    xmlChar *xpath = (xmlChar*) "//keyword"; 這里為什么要用"//"  回復  更多評論
      
    # re: libxml中使用xpath解析xml文件[未登錄] 2014-01-02 13:06 | 123
    @a
    你好好看一些啊xpath的語法  回復  更多評論
      

    只有注冊用戶登錄后才能發(fā)表評論。


    網站導航:
     
    本站不再更新,歡迎光臨 java開發(fā)技術網
    主站蜘蛛池模板: 亚洲精品国产精品乱码不卞| 亚洲人成电影在线天堂| 中文字幕免费观看视频| 亚洲视频在线一区二区三区| 黄页网站免费在线观看| 国产精品成人亚洲| 久久青青草原亚洲AV无码麻豆| 在线a免费观看最新网站| 国产亚洲蜜芽精品久久| 亚洲视频在线观看| 免费人成网站7777视频| 88av免费观看| 妇女自拍偷自拍亚洲精品| 久久久久久亚洲精品成人| 免费成人av电影| 国产卡一卡二卡三免费入口 | 两个人日本WWW免费版 | 久久亚洲国产视频| 永久免费看mv网站入口| 久久久久久免费一区二区三区| 香蕉大伊亚洲人在线观看| 国产亚洲福利精品一区| 国产jizzjizz免费视频| 99久久精品国产免费| 一级中文字幕免费乱码专区| 日本亚洲精品色婷婷在线影院| 亚洲日韩精品无码一区二区三区| 日韩伦理片电影在线免费观看| 午夜精品免费在线观看| yellow视频免费在线观看| 亚洲欧美中文日韩视频| 亚洲精品国产第1页| 亚洲男同帅GAY片在线观看| 国产乱子伦精品免费无码专区| 美女视频黄的全免费视频| 久久久国产精品无码免费专区| 一区二区三区在线免费| 亚洲成av人片在www鸭子| 亚洲第一成人在线| 亚洲黄色在线观看| 亚洲国产成人久久综合碰碰动漫3d|