歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Android SAX解析xml文件

Android SAX解析xml文件

日期:2017/3/1 10:52:37   编辑:Linux編程

SAX解析XML文件的步驟:

第一步:通過SAX工廠取得SAX解析器

  1. SAXParserFactory saxParserFactory = SAXParserFactory.newInstance();//取得SAX解析的工廠
  2. SAXParser saxParser = saxParserFactory.newSAXParser();//取得SAX解析器

第二步:調用SAX解析器的方法parse 對xml進行解析

  1. PersonParser personParser = new PersonParser();
  2. saxParser.parse(inStream, personParser); // 當解析到相應的XML文件時就會觸發事件personParser對應的回調方法

第三步:實現第二步的personParser對應的回調方法

  1. //繼承DefaultHandler 重寫觸發事件的方法,自己寫實現方法
  2. private final class PersonParser extends DefaultHandler{
  3. //當解析到<?xml .....>標簽時,該函數會被執行
  4. @Override
  5. public void startDocument() throws SAXException {
  6. persons = new ArrayList<Person>();
  7. }
  8. @Override
  9. /*
  10. * uri 是命名空間的uri
  11. * localName 是不帶命名空間的後綴名
  12. * qName 是帶命名空間的名字
  13. * attributes 是存放標簽的屬性值
  14. */
  15. //當遇到元素結點時,該函數被執行
  16. public void startElement(String uri, String localName, String qName,
  17. Attributes attributes) throws SAXException {
  18. }
  19. //當遇到文本結點時,該函數被執行
  20. @Override
  21. public void characters(char[] ch, int start, int length)
  22. throws SAXException {
  23. }
  24. //當遇到元素結點結束時,該函數被執行
  25. @Override
  26. public void endElement(String uri, String localName, String qName)
  27. throws SAXException {
  28. }
Copyright © Linux教程網 All Rights Reserved