android 中 XML 重点

SAX(Simple Api for XML)方式:

1.原理是将文档逐行读入内存,逐行解析

2.XML文档开始解析、结束解析,每个标签开始解析、结束解析的时刻都会触发一个事件,解析DTD和schema时也会触发一个事件,分别为

  startDocument()

  endDocument()

  startElement(......)

  character(......)

  endElement(......)

3.解析步骤:

  SAXParserFactory factory = SAXParserFactory.newInstance();  //得到一个SAX解析器工厂的实例

  XMLReader reader = factory.newSAXParser().getXMLReader();   //从SAX解析器工厂得到一个XMLreader

扫描二维码关注公众号,回复: 639597 查看本文章

  reader.setContentHandler(new MyContentHandler());           //设置XMLReader的ContentHandler

  reader.parse(new InputSource(new StringReader(str)));       //XMLReader读入xml文件的string

4.(3)中第三条语句用到的MyContentHandler需要新建一个类,extends DefaultHandler,override其中的(2)中的五个方法。

  PS:为什么不直接extends ContentHandler?因为DefaultHandler的存在使用的是适配器模式,由于共有四种handler,故先用DefaultHandler继承ContentHandler,然后在extends DefaultHandler

DOM方式:

1.原理是将XML文档全部读入内存,存入一个树形结构

猜你喜欢

转载自zzqnnu.iteye.com/blog/1947598