剛剛使用SAX解析器。任何人都可以告訴我如何運行它。什麼都需要運行它(jdk)..我可以有一個薩克斯解析器,可以解析android xml和正常xml運行Sax解析器
Q
運行Sax解析器
0
A
回答
0
SAX解析器通過創建一個ContentHandler
對象來實現,該對象實現與解析XML文檔時發生的事件相對應的某些回調函數。例如,當解析器開始解析文檔時調用startDocument
方法,並且在發現新標籤時調用startElement
;類似地,當解析器發現標籤或文檔的末尾或發現無效序列時,將調用endElement
,endDocument
和error
。
This example顯示瞭如何使用SAX解析器。關鍵是MyHandler
類擴展了DefaultHandler
類(它實現了ContentHandler
接口)並覆蓋了每個回調方法的空實現。
想想這樣:Java SAXParser
類知道如何解析XML文檔,但是當它發現感興趣的事情時,它依賴於某個處理程序類來知道如何處理它們。 DefaultHandler
類是一個幫助器實現,您可以擴展以關注有趣的事情。
0
如果需要,您可以直接使用ContentHandler(請參見下文)而不是擴展DefaultHandler。我相信這個級別的SAX解析在Android平臺上可用。
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import org.xml.sax.XMLReader;
public class Demo {
public static void main(String[] args) throws Exception {
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
XMLReader xr = sp.getXMLReader();
xr.setContentHandler(new MyContentHandler());
xr.parse("input.xml");
}
private static class MyContentHandler implements ContentHandler {
public void setDocumentLocator(Locator locator) {
}
public void startDocument() throws SAXException {
}
public void endDocument() throws SAXException {
}
public void startPrefixMapping(String prefix, String uri)
throws SAXException {
}
public void endPrefixMapping(String prefix) throws SAXException {
}
public void startElement(String uri, String localName, String qName,
System.out.println("START " + qName);
}
public void endElement(String uri, String localName, String qName)
throws SAXException {
System.out.println("END " + qName);
}
public void characters(char[] ch, int start, int length)
throws SAXException {
System.out.println(new String(ch, start, length));
}
public void ignorableWhitespace(char[] ch, int start, int length)
throws SAXException {
}
public void processingInstruction(String target, String data)
throws SAXException {
}
public void skippedEntity(String name) throws SAXException {
}
}
}
相關問題
- 1. Android SAX解析器
- 2. 在SAX解析器
- 3. SAX解析器vs XMLPull解析器
- 4. SAX XML解析器或DOM解析器?
- 5. SAX解析器。如何阻止SAX解析器連接到Internet?
- 6. 解析問題SAX解析器的Android
- 7. 的Android - 解析使用SAX解析器
- 8. 無法解析使用SAX解析器
- 9. 使用android sax解析器解析XML
- 10. 使用sax解析器解析XML
- 11. 用SAX解析器解析XML
- 12. SAX解析器遞歸解析
- 13. SAX解析器不解析specal字符 「&」
- 14. 執行束誰cintains XML解析器(SAX)
- 15. SAX XML解析器的缺失行號
- 16. CLojure sax解析器示例
- 17. 帶SAX解析器的RSS
- 18. SAX解析器錯誤
- 19. 使用SAX解析器
- 20. Groovy - NekoHTML Sax解析器
- 21. 麻煩與SAX解析器
- 22. SAX拉解析器Android
- 23. SAX解析器:從XML
- 24. SAX解析器 - NumberFormatException的
- 25. SAX解析器異常
- 26. SAX RSS FEED解析器
- 27. 中斷Nokogiri SAX解析器?
- 28. 多級XML SAX解析器
- 29. Android中的SAX解析器?
- 30. Android SAX解析器錯誤
感謝maerics能告訴我如何解析本地的xml文件..然後defaulthandler類不是必需的 – apoorva 2010-04-28 04:28:40