基于Pull解析器怎么实现
发表于:2024-11-18 作者:千家信息网编辑
千家信息网最后更新 2024年11月18日,这篇文章主要讲解了"基于Pull解析器怎么实现",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"基于Pull解析器怎么实现"吧!DOM 解析器将所有 XM
千家信息网最后更新 2024年11月18日基于Pull解析器怎么实现
这篇文章主要讲解了"基于Pull解析器怎么实现",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"基于Pull解析器怎么实现"吧!
DOM 解析器将所有 XML 文档读取到内存中,然后允许您使用 DOM API 遍历 XML 树、检索所需的数据。这是非常直观的代码,并且,在某些方面比基于 SAX 的实现更加简单。但是,DOM 通常更加占用内存,因为一切内容都会先读取到内存中。这对于运行 Android 的移动设备来说是一个问题,但是当 XML 文档始终保持很小的大小时是可行的。这可能意味着,Android 的开发人员会认为 SAX 解析在 Android 应用程序上更加常见,因此为它提供了额外的实用工具。Android 还提供了另一种类型的 XML 解析器,它就是 pull 解析器。
XML pull 解析器
如前所述,Android 并未提供对 Java StAX API 的支持。但是,Android 确实附带了一个 pull 解析器,其工作方式类似于 StAX。它允许您的应用程序代码从解析器中获取事件,这与 SAX 解析器自动将事件推入处理程序相反。清单 10 显示了提要解析接口的一个 pull 解析器实现。
基于 Pull 解析器的实现
java代码:
public class XmlPullFeedParser extends BaseFeedParser { public XmlPullFeedParser(String feedUrl) { super(feedUrl); } public List< Message > parse() { List< Message > messages = null; XmlPullParser parser = Xml.newPullParser(); try { // auto-detect the encoding from the stream parser.setInput(this.getInputStream(), null); int eventType = parser.getEventType(); Message currentMessage = null; boolean done = false; while (eventType != XmlPullParser.END_DOCUMENT && !done){ String name = null; switch (eventType){ case XmlPullParser.START_DOCUMENT: messages = new ArrayList< Message >(); break; case XmlPullParser.START_TAG: name = parser.getName(); if (name.equalsIgnoreCase(ITEM)){ currentMessage = new Message(); } else if (currentMessage != null){ if (name.equalsIgnoreCase(LINK)){ currentMessage.setLink(parser.nextText()); } else if (name.equalsIgnoreCase(DESCRIPTION)){ currentMessage.setDescription(parser.nextText()); } else if (name.equalsIgnoreCase(PUB_DATE)){ currentMessage.setDate(parser.nextText()); } else if (name.equalsIgnoreCase(TITLE)){ currentMessage.setTitle(parser.nextText()); } } break;
感谢各位的阅读,以上就是"基于Pull解析器怎么实现"的内容了,经过本文的学习后,相信大家对基于Pull解析器怎么实现这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
代码
内存
内容
程序
学习
事件
就是
应用程序
文档
问题
应用
可行
实用
直观
人员
大小
如前所述
实用工具
工具
常见
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
单例模式数据库 php
梦幻新诛仙风云再起服务器
网络安全主要实用技术不包括
win11无法解析服务器的DNS地址
山西信息网络安全产教联盟
服务器攻击图片
软件开发靠谱公司
软件开发费那个税收分类
t300 服务器 二手
ftp服务器权限管理linux
动物鉴定数据库
2021网络安全宣传答案
淮安怪痘网络技术有限公司
武昌区电商网络安全维护资费
容器云和服务器
服务器多个ip有什么用
服务器属地
普陀区推广软件开发厂家价格走势
鹅鹅鹅互联网科技
社区加强网络安全管理
服务器端怎么没有用户管理
做数据挖掘和软件开发
软件开发靠谱公司
法宣在线网络安全
虚拟主机跟云服务器吗
学生网络安全应急演练方案
地铁逃生哪个服务器好打卧底模式
服务器存储有点倾斜
wow服务器安苏
安装网络技术厂家