Android學習-Sax解析XML

XML解析ide


XML可擴展標記語言spa


Sax:接口

事件驅動型解析接口事件

原理
對文檔順序掃描,對事件驅動的解析過程,文檔

事件get

 開始解析io

       開始解析根標籤class

          開始解析標籤test

                解析到數據原理

         結束解析標籤

     結束解析根標籤

結束解析

工廠模式

SaxParserFactory->SaxParser->SaxReader


核心代碼

Stringstr ="<doc><p>test</p></doc>";

SAXParserFactoryfatory =SAXParserFactory.newInstance();

try{

XMLReader reader = fatory.newSAXParser().getXMLReader();

reader.setContentHandler(newXmlHandler());

reader.parse(newInputSource(newStringReader(str)));

}catch(Exception e) {

//TODOAuto-generated catch block

e.printStackTrace();

}




classXmlHandlerextendsDefaultHandler

{


@Override

publicvoidcharacters(char[]ch,intstart,intlength)throwsSAXException {

//TODOAuto-generated method stub

Log.i("","------------characters:"+newString (ch));

}


@Override

publicvoidendDocument()throwsSAXException {

//TODOAuto-generated method stub

Log.i("","------------endDocument");

}


@Override

publicvoidendElement(String uri, String localName, String qName) throwsSAXException {

//TODOAuto-generated method stub

Log.i("","------------endElement");

}


@Override

publicvoidstartDocument()throwsSAXException {

Log.i("","------------startDocument");

}


@Override

publicvoidstartElement(String uri, String localName, String qName, Attributesattributes) throwsSAXException {

Log.i("","------------startElement");

}

}

相關文章
相關標籤/搜索