- SAX
- Digester
SAX
- Simple API for XML。
- 實作方式:
- extends DefaultHandler。
- new SAXParserFactory 。
- SAXParserFactory sAXParserFactory = SAXParserFactory.newInstance();
- new SAXParser:
- SAXParser sAXParser = sAXParserFactory.newSAXParser();
- 從 SAXParser 中得到一個 XMLReader 的實例:
- XMLReader xMLReader = sAXParser.getXMLReader();
- Set Handler 到 XMLReader
- xMLReader.setContentHandler(rssParser);
- 藉 InputStream 取得 XML,用 handler 進行 parser。
- xMLReader.parse(is);
DefaultHandler 執行方式:
- startDocument()
- 適合建立儲存物的集合 (ex: list)。
- startElement(String namespaceURI, String localName, String qName, Attributes atts)
- 解析過程中,遇到 XML 中的 tag 時,此 method 會被呼叫,可以由 localName 得知解析到那個 element 了。
- 可以適當的建立相對物件。
- attributes.getValue(NAME)
- characters(char ch[], int start, int length)
- 在執行 startElement() 後,此 method 會被呼叫,参数 ch[] 就是 element 中所帶的内容。
- endElement(String namespaceURI, String localName, String qName)
- endDocument()
* Reference
- android解析xml文件的方式(其二) - 东子哥 - 博客园
- 使用SAXParser取得XML文件里的属性值 - XML - AJava
- Android RSS解析步骤 | 易网联信
- SAX之:SAXParserFactory与SAXParser - 小文字 - 博客园
沒有留言:
張貼留言