【Android之解析XML】非淡泊无以明志,非宁静无以致远。这篇文章主要讲述Android之解析XML相关的知识,希望能为你提供帮助。
1.XML:可扩展标记语言。
可扩展标记语言是一种很像超文本标记语言的标记语言。
它的设计宗旨是传输数据,而不是显示数据。
它的标记没有被预定义。需要自行定义标签。
它被设计为具有自我描述性。
是W3C的推荐标准。
2.android解析XML的三种方式
(1).SAX解析
h t t p : / / w w w. c n b l og s . co m / z ha n g m i ao 1 4 / p /6 1 8 35 0 5 .h t m l
(2).DOM解析
h
tt p : / /w w w . cn b lo g s .c o m /z h an g m ia o 1 4 /p / 61 8 3 9 76 . h t ml
(3).Pull解析
h t t p : / / w w w . c n b l o gs . c om / zh a ng mi a o1 4/ p /6 1 84 2 0 1. h t m l
3.解析技术总结
对于Android的移动设备而言,因为设备的资源比较宝贵,内存是有限的,所以我们需要选择合适的技术来解析XML,这样有利于提高访问的速度。
(1).DOM在处理XML文件时,将XML文件解析成树状结构并放入内存中进行处理,当XML比较小时,可以选择DOM,因为它简单、直观。
(2).SAX则是以事件作为解析XML文件的模式,它将XML文件转化为一系列的事件,由不同的事件处理器来决定如何处理。XML文件较大时,选择SAX技术是比较合理的。虽然代码量有些大,但它不需要讲所有的XML文件加载到内存中。这样对于有限的Android内存更有效,而且Android提供了一种传统的SAX使用方法以及一个便捷的SAX包装器。使用Android.util.xml类,会比使用SAX来的简单。
(3).XML Pull解析并未像SAX解析那样监听元素的结束,而是在开始处完成了大部分处理。这有利于提早读取XML文件,极大地减少解析时间,这种优化对于连接速度较慢的移动设备而言尤为重要。对于XML文档较大但只需要文档的一部分时,XML Pull解析器则是更为有效的方法。
推荐阅读
- android studio配置android开发环境
- Android ContextMenu的使用
- Application Framework层介绍
- Android工程方法数超过65535的解决办法
- Android事件分发
- Android控件(RadioButton(单选button))
- 设置不同的android:inputTye属性导致 EditText hint的字体发生改变
- 从Java熟练到Android入门
- Android studio图片ERROR: 9-patch image xx .9.png malformed