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
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文档全部读入内存,存入一个树形结构
更多相关文章
- SpringBoot 2.0 中 HikariCP 数据库连接池原理解析
- Android(安卓)ApiDemos示例解析(12):App->Activity->Redirection
- Android百度地图将经纬度转换为地址信息
- 【Android】 在Andorid中解析Json数据示例
- chromium-cronet库的编译用于Android和ios平台实现quic协议
- Android(安卓)ApiDemos示例解析(110):Views->Data Widgets->1. D
- android 自学日记(六) ——SAX解析中换行问题解决
- Android(安卓)ApiDemos示例解析(127):Views->Layout Animation->
- Android(安卓)AsyncTask源码解析