Android第二十三天

一:XML概念:
    XML(eXtended Markup Language)可擴展標示語言
    XML是跨平臺、跨網絡、跨語言的用來數據交換、系統配置的可擴展標示語言。
    XML的優點:能夠清晰地進行數據描述。
    XML格式:
    <?xml version="1.0" encoding="utf-8"?>  
    <根標籤>
        <子標籤>數據</子標籤>
        ...
    </根標籤>node

二:XML解析
    1.Pull解析 (以事件常量的方式解析)
      XmlPullParserFactory factory=XmlPullParserFactory.newInstance();  // 建立解析工廠
      XmlPullParser xmlParser=factory.newPullParser();   // 生成解析對象
      xmlParser.setInput(new StringReader(content));   // 設置要讀取的內容
      int type=xmlParser.getEventType();  // 獲取當前解析的事件類型常量
      String tagName=xmlParser.getName();    // 獲取當前的標籤名稱
      xmlParser.next();    // 將遊標下移,獲取下一個事件常量
      String userName=xmlParser.getText();  // 獲取文本網絡

    2.SAX解析 (Simple Api for Xml) 針對XML的簡單解析API
      SAX以事件通知的方式解析XML。
      自定義一個繼承自DefaultHandler的類,複寫其中的相關方法。
      SAXParserFactory factory=SAXParserFactory.newInstance();   // 建立解析工廠
      SAXParser parser=factory.newSAXParser();    // 建立解析對象
      File f=new File("xxx");
      實例化DefaultHandler對象handler
      parser.parse(f,handler);    // 解析XMLui

    3.DOM解析(瞭解)(Document Object Model)
      將XML結構以DOM樹結構解析到內存中。
      DOM解析能夠隨機訪問DOM樹中的節點。
      DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
      DocumentBuilder builder=factory.newDocumentBuilder();
      Document doc = builder.parse("file對象");   // 解析XML到內存中
      NodeList nodeList=doc.getElementsByTagName("標籤名");
      Node node = nodeList.item(index);
      String nodeValue=node.getFirstChild().getNodeValue();xml

相關文章
相關標籤/搜索