Android之解析XML

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介:

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解析器则是更为有效的方法。



本文转自lzwxx 51CTO博客,原文链接:http://blog.51cto.com/13064681/1944375

相关文章
|
11天前
|
IDE Android开发 iOS开发
深入解析Android与iOS的系统架构及开发环境差异
本文旨在探讨Android和iOS两大主流移动操作系统在系统架构、开发环境和用户体验方面的显著差异。通过对比分析,我们将揭示这两种系统在设计理念、技术实现以及市场策略上的不同路径,帮助开发者更好地理解其特点,从而做出更合适的开发决策。
38 2
|
2天前
|
XML Web App开发 JavaScript
XML DOM 解析器
XML DOM 解析器
|
3天前
|
XML Web App开发 JavaScript
XML DOM 解析器
XML DOM 解析器
|
6天前
|
XML Web App开发 JavaScript
XML DOM 解析器
XML DOM 解析器
|
8天前
|
XML 数据格式 Python
python 解析xml遇到xml.etree.ElementTree.ParseError: not well-formed (invalid token): |4-8
python 解析xml遇到xml.etree.ElementTree.ParseError: not well-formed (invalid token): |4-8
|
16天前
|
XML Web App开发 JavaScript
XML DOM 解析器
XML DOM 解析器
|
7天前
|
XML Web App开发 JavaScript
XML DOM 解析器
XML DOM 解析器
|
12天前
|
XML Web App开发 JavaScript
XML DOM 解析器
XML DOM 解析器
|
13天前
|
XML Web App开发 JavaScript
XML DOM 解析器
XML DOM 解析器
|
9天前
|
XML Web App开发 JavaScript
XML DOM 解析器
XML DOM 解析器
下一篇
无影云桌面