SAX是Simple API for
XML的简称,在Android里面提供对XML文件的剖析接口方法,若是给大家三个XML文件,须求把里面我们关怀的数码解析出来,大家就可以行使SAX技术,在具体运用中,会对XML文件的每一个字符逐一读取并动身相应事件,也等于说,SAX技术是事件驱动的。比如startDocument,startElement,characters,endElement等等上面是贰个案例。

实例源码:

 1 public List<Person> getPersons(InputStream inStream) throws Throwable
 2 
 3 {
 4        SAXParserFactory factory = SAXParserFactory.newInstance();
 5        SAXParser parser = factory.newSAXParser();
 6        //自定义扩展自DefaultHandler的子类,覆写一些解析XML时我们需要的方法
 7        PersonParser personParser = new PersonParser();
 8        parser.parse(inStream, personParser);
 9        //使用完传进来的输入流后就把它关闭
10        inStream.close();
11        return personParser.getPersons();
12 
13 }

SAXParserFactory 相关介绍:

概念了一个API工厂,使得应用程序可以布置和获取1个按照SAX(Simple API for
XML

)的解析器,从而可以解析XML文档( 原文: Defines a factory API that
enables applications to configure and obtain a SAX based parser to parse
XML documents. )

它的构造器是受保险的,由此只可以用newInstance()方法赢得实例( Protected
constructor to force use of
newInstance().

SAXParser相关介绍:

概念了3个接续自XMLReader类的API,其构造器也是受保障的,通过newSAXParser()
方法拿到实例,可以把各样数据源作为分析用的XML(那个方式就是public void
parse
(InputSource
is,
DefaultHandler
dh)),这几个输入数据源包罗输入流,文件,U凯雷德L以及SAX输入能源。(Defines the
API that wraps an
XML,XMLReader
implementation class , An instance of this class can be obtained from
the
newSAXParser()
method. Once an instance of this class is obtained, XML can be parsed
from a variety of input sources. These input sources are InputStreams,
Files, URLs, and SAX InputSources. )

至于SAX越多应用音信,还会撰写。

相关文章

网站地图xml地图