在移动开发中,服务器常以xml形式向Android传递数据,这个时候就需要解析服务器传递过来的xml了,以下图为例,服务器传过来的数据如图所示
public class XmlParserUtils {
//解析xml的业务方法
public List<News> parserXml(InputStream in) throws Exception {
List<News> newsLists=null;
News news=null;
//获取xml的解析器
XmlPullParser xmlPullParser= Xml.newPullParser();
//设置解析器要解析的内容
xmlPullParser.setInput(in,"utf-8");
//获取解析的事件类型
int type=xmlPullParser.getEventType();
//不停的向下解析
while (type!=XmlPullParser.END_DOCUMENT){
//具体判断一下解析的是开始节点还是结束节点
switch (type){
case XmlPullParser.START_TAG://解析开始节点
//具体判断解析的是哪个开始标签
if("newss".equals(xmlPullParser.getName())){
//创建一个list集合
newsLists=new ArrayList<News>();
}
else if ("news".equals(xmlPullParser.getName())){
news=new News();
}
else if("title".equals(xmlPullParser.getName())){
news.setTitle(xmlPullParser.nextText());
}
else if ("description".equals(xmlPullParser.getName())){
news.setDescription(xmlPullParser.nextText());
}
else if ("image".equals(xmlPullParser.getName())){
news.setImage(xmlPullParser.nextText());
}
else if ("type".equals(xmlPullParser.getName())){
news.setType(xmlPullParser.nextText());
}
else if ("comment".equals(xmlPullParser.getName())){
news.setComment(xmlPullParser.nextText());
}
break;
case XmlPullParser.END_TAG: //解析结束标签
if ("news".equals(xmlPullParser.getName())){
//把Javabean添加到集合中
newsLists.add(news);
}
break;
}
//不断向下解析
type=xmlPullParser.next();
}
return newsLists ;
}
}
分享到:
相关推荐
Android解析XML数据的方法,该示例详细说明了如何使用Android的Xml.newPullParser()来解析XML数据
本例使用多种方式获取本地XML文件,还有通过url获取XML文件,使用Android内置的PULL解析器对XML文件进行解析,例子是解析我国... 《Android解析XML文件》博文路径:http://blog.csdn.net/zzp16/article/details/7795410
Android中XML的数据解析代码。博客地址请关注:http://blog.csdn.net/yegongheng
Android解析xml文件获取网络数据http请求,带Fragment框架,图片缓存本地
本代码能够将Android中XML类型的数据进行完整的解析,包含XML的各种情况
Android基础——XML数据的三种解析方式
android java开发常用 xml数据格式解析 生成 jdom.jar 有各种实例代码,加压查找即可看到个版本jar 包
在用SAX解析xml文档时候,在读取到文档开始和结束标签时候就会回调一个事件,在读取到其他节点与内容时候也会回调一个事件。在SAX接口中,事件源是org.xml.sax包中的XMLReader,它通过parser()方法来解析XML文档,并...
android访问网络返回的XML数据并且进行解析演示
使用SAX方式解析XML SAX 是读取和操作 XML 数据的更快速、更轻量的方 法。SAX 允许您在读取文档时处理它,从而不必等待整个文档被存储之后才采取操作。它不涉及 DOM 所必需的开销和概念跳跃。 SAX API是一个基于事件...
simple-xml包解析xml格式数据、SAX解析xml格式数据。jackson包解析json格式数据。
【正文】 一、XML和Json数据的引入: 通常情况下,每个需要访问网络的应用程序都会有一个自己的服务器,我们可以向服务器提交数据,也可以从服务器获取数据。
不废话,直接贴代码,主要是xml的三种解析和json数据解析,但愿对初学者有帮助!
android 使用dom解析全世界地区城市xml文件并存入数据库
本篇文章包含以下内容: ...DOM解析XML文件时,会将XML文件的所有内容读取到内存中(内存的消耗比较大),然后允许您使用DOM API遍历XML树、检索所需的数据 一、在Assets文件夹中模拟创建XML文件 <name
Android解析XML格式数据的三种方法 XML在各种开发中都广泛应用,Android也不例外。作为承载数据的一个重要角色,如何读写XML成为Android开发中一项重要的技能。今天就由我向大家介绍一下在Android平台下几种常见的...
这是一个完整的eclipse项目,直接打开就可以看到整个项目完整的代码,而且有单元测试代码
android和java解析XML中内容代码,可复制先用,更改时对应自己的XML标签
该Demo是通过Dom方式来解析xml,运行环境为androidStudio。
XML 文件的解析是将 XML 文件转换为内存中的数据结构。常见的解析方法有 DOM 解析和 SAX 解析。DOM 解析将整个 XML 文件加载到内存中,然后进行解析。SAX 解析是事件驱动的解析方法,逐步解析 XML 文件。 XML 文件...