List<Entry> list = new ArrayList<>();
Entry entry = null;
try {
int eventType = response.getEventType();
while(XmlPullParser.END_DOCUMENT != eventType){
switch (eventType){
case XmlPullParser.START_TAG:
String tag = response.getName();
if ("item".equalsIgnoreCase(tag)){
entry = new Entry(); }else if (entry != null){
if ("title".equalsIgnoreCase(tag)){
entry.setTitle(new String(response.nextText().getBytes(),"UTF-8"));
}else if ("description".equalsIgnoreCase(tag)){
entry.setDesc(new String(response.nextText().getBytes(),"UTF-8"));
}else if ("link".equalsIgnoreCase(tag)){
entry.setUrl(response.nextText());
}
}
break;
case XmlPullParser.END_TAG:
if (response.getName().equalsIgnoreCase("item") && entry != null) {
list.add(entry);
entry = null;
}
break;
default:
break;
}
eventType = response.next();
}
}catch (XmlPullParserException e) {
Log.e(TAG,"xml parse error :"+e.getLocalizedMessage());
} catch (IOException e) {
Log.e(TAG,"xml parse error IOException:"+e.getLocalizedMessage());
}

上面是第一种

 try {
int eventType = response.getEventType();
while(XmlPullParser.END_DOCUMENT != eventType){
switch (eventType){
case XmlPullParser.START_TAG:
String tag = response.getName();
if ("entry".equalsIgnoreCase(tag)){
entry = new Entry(); }else if (entry != null){
if ("title".equalsIgnoreCase(tag)){
entry.setTitle(new String(response.nextText().getBytes(),"UTF-8"));
}else if ("content".equalsIgnoreCase(tag)){
entry.setDesc(new String(response.nextText().getBytes(),"UTF-8"));
}else if ("link".equalsIgnoreCase(tag)){
entry.setUrl(response.getAttributeValue(null, "href"));
}
}
break;
case XmlPullParser.END_TAG:
if (response.getName().equalsIgnoreCase("entry") && entry != null) {
list.add(entry);
entry = null;
}
break;
default:
break;
}
eventType = response.next();
}
}catch (XmlPullParserException e) {
Log.e(TAG,"xml parse error :"+e.getLocalizedMessage());
} catch (IOException e) {
Log.e(TAG,"xml parse error IOException:"+e.getLocalizedMessage());
}

上面是第二种

xml解析代码示例的更多相关文章

  1. iOS 中的XML解析代码(SAX)

    1.XML解析(SAX) NSXMLParser SAX 大文件 1)打开文档 - (void)parserDidStartDocument:(NSXMLParser *)parser 2)开始查找起 ...

  2. XML解析代码课堂讲解实例

    //获取所有的子元素,不包括回车 package com.dom4jDemo; import java.io.File; import java.util.List; import org.dom4j ...

  3. XML解析代码

    import java.io.File; import java.io.IOException; import java.util.HashMap; import java.util.LinkedLi ...

  4. XML解析与xml和Map集合的互转

    1.XML的解析.首先解析XML文件我们需要先获取到文件的存放路径,获取方法有三种分别获取xml文件不同的存放路径. 代码: public class PropertiesDemo { public ...

  5. Delphi之通过代码示例学习XML解析、StringReplace的用法(异常控制 good)

    *Delphi之通过代码示例学习XML解析.StringReplace的用法 这个程序可以用于解析任何合法的XML字符串. 首先是看一下程序的运行效果: 以解析这样一个XML的字符串为例: <? ...

  6. ACEXML解析XML文件——简单示例程序

    掌握了ACMXML库解析XML文件的方法后,下面来实现一个比较完整的程序. 定义基本结构 xml文件格式如下 <?xml version="1.0"?> <roo ...

  7. 使用XStream注解实现Java对象与XML互相转换的代码示例

    本文记录一下使用xstream这个api的注解特性对Java对象与XML字符串相互转换的一些代码示例.    我们很多人都处理过XML文件,也有很多非常成熟的第三方开源软件.如:jdom.dom4j等 ...

  8. My.Ioc 代码示例——实现自动注册/解析

    在很多 Ioc 容器中,当使用者向容器请求实现了某个契约类型 (Contract Type) 的服务时 (调用类似如下方法 container.Resolve(Type contractType)), ...

  9. 通过http请求传递xml流和接收xml流的代码示例

    通过http请求传递xml流和接收xml流的代码示例 //1.在servlet中post一个xml流:import java.io.OutputStreamWriter;import org.jdom ...

随机推荐

  1. 关于Masonry框架(AutoLayout)的用法--面向初学者

    Masonry作为目前较为流行的自动布局第三方框架,简单易用,大大减少了程序员花在UI布局和屏幕适配的精力与时间. 1 基本用法 1.1 事例1: 图1-1 // 首先是view1自动布局 [view ...

  2. ios7之后 根据UILabel的文字计算frame的方法

    ios7 新出来的根据label的文字和字体大小来确定label的宽高. 官方的方法是: - (CGRect)boundingRectWithSize:(CGSize)size options:(NS ...

  3. mysql空间数据相关操作

    建表语句: CREATE TABLE ts.points ( name ) NOT NULL, location POINT NOT NULL, description ) ); 添加记录如下: IN ...

  4. 新安装Eclipse后的一些配置

    配置护眼的背景色 Window-> Preferences-> General-> Editors-> Text Editors: Appearance color optio ...

  5. 02_setter注入

    工程截图如下 [HelloWorld.java] package com.HigginCui; public class HelloWorld { private String words; publ ...

  6. HDU 1058 Humble Number

    Humble Number Problem Description A number whose only prime factors are 2,3,5 or 7 is called a humbl ...

  7. FileInputStream 与 BufferedInputStream 效率对比

    我的技术博客经常被流氓网站恶意爬取转载.请移步原文:http://www.cnblogs.com/hamhog/p/3550158.html ,享受整齐的排版.有效的链接.正确的代码缩进.更好的阅读体 ...

  8. 关于php的认识和介绍

    php的介绍: 什么是php? <1>:php是一个编程语言 <2>:php是处理php编程语言的一个软件.php语言必须运行在php软件上. 为什么要学习php? php可以 ...

  9. Linux+svn无法显示日志

    自己在linux中配置了一个svn服务器,但是客户端在浏览日志的时候报错.提示不能连接到服务器,是否离线查看... 谷歌了一下,是因为svnserve.conf中配置了anon-access = re ...

  10. .net Remoting 的工作原理是什么?

    webservice和.net remoting都是用来通信的框架,它们最大的优点是可以像调用本地对象一样调用远程对象 区别:1.webservice是用的应用层协议http封装的,所以它可以被很多其 ...