HttpUtils解析xml数据

原创 2016年06月01日 11:28:50
public class MainActivity extends Activity implements IXListViewListener {

    private HttpUtils utils;
    private List<Bean> list;
    private int index = 0;
    private String url = "http://www.oschina.net/action/api/tweet_list?pageIndex=";
    private MyAdapter adapter;
    private Bean bean;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        utils = new HttpUtils();
  
        list = new ArrayList<Bean>();
        initData();
    }

    private void setAdapter(){
        if(adapter==null){
            adapter = new MyAdapter(this,list);
            lv.setAdapter(adapter);
        }else{
            adapter.notifyDataSetInvalidated();
        }
    }
    private void initData() {
        utils.send(HttpMethod.GET, url + (index++),
                new RequestCallBack<String>() {

                    @Override
                    public void onFailure(HttpException arg0, String arg1) {
                        Toast.makeText(MainActivity.this, "请求失败", 0).show();
                    }

                    @Override
                    public void onSuccess(ResponseInfo<String> arg0) {
                        String string = arg0.result;
                        ByteArrayInputStream inputstream = new ByteArrayInputStream(
                                string.getBytes());
                        XmlPullParser parser = Xml.newPullParser();
                        try {
                            parser.setInput(inputstream, "utf-8");
                            int type = parser.getEventType();
                            while (type != XmlPullParser.END_DOCUMENT) {
                                String name = parser.getName();
                                switch (type) {
                                case XmlPullParser.START_TAG:
                                    if ("tweet".equals(name)) {
                                        bean = new Bean();
                                    } else if ("id".equals(name)) {
                                        bean.id = Integer.parseInt(parser
                                                .nextText());
                                    } else if ("portrait".equals(name)) {
                                        bean.portrait = parser.nextText();
                                    } else if ("author".equals(name)) {
                                        bean.author = parser.nextText();
                                    } else if ("body".equals(name)) {
                                        bean.body = parser.nextText();
                                    } else if ("pubDate".equals(name)) {
                                        bean.pubDate = parser.nextText();
                                    } else if ("imgSmall".equals(name)) {
                                        bean.imgSmall = parser.nextText();
                                    } else if ("imgBig".equals(name)) {
                                        bean.imgBig = parser.nextText();
                                    }
                                    break;

                                case XmlPullParser.END_TAG:
                                    if ("tweet".equals(name)) {
                                        list.add(bean);
                                        bean = null;
                                    }
                                    break;
                                }
                                type = parser.next();
                            }
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
                        
                        setAdapter();
                    }
                });
    }
}

相关文章推荐

HttpUtils解析XMl

package com.example.yuekao1; import java.io.ByteArrayInputStream; import java.io.InputStream; impor...

Httputils解析gson数据

首先得导入xUtils-2.6.14.jar包 根据情况pashbuild 这里我用的是studio 直接导进去 编译 说明一下: 因为有些版本不支持Httpclient要在build.g...

用于解析Json数据的HttpUtils工具类

该工具类用于解析网址中的Json数据 package org.mobiletrain.robot.http; import java.io.BufferedInputStream; impor...

<<第一行代码>>--自定义HttpUtils类并使用回调获取服务器返回数据

在一书中学习到的技巧,再此实验整合:在编写网络应用时,我们经常会用到发送Http请求的地方,然而每次发送Http请求的代码几乎是相同的,所以通常情况下,我们将这些通用的网络操作提取到一个公共类里,并提...

项目中Gson解析的上拉加载下拉刷新(HttpUtils)

在Activity中 package com.example.yuekaodemo; import com.viewpagerindicator.TabPageIndicator; import ...

xml数据解析

  • 2015年07月10日 11:29
  • 124KB
  • 下载

解析XML数据

  • 2014年11月22日 11:58
  • 1.19MB
  • 下载

xml数据请求和dom解析

一. 背景知识: 今天在做项目的时候遇到这样一个需求:使用http请求公司内部一个网站,返回xml数据,然后解析xml数据从而判断产品是否已经上线。其实这个非常简单,使用dom解析就ok了。 二....
  • zdp072
  • zdp072
  • 2015年03月16日 22:11
  • 406

xml数据解析包

  • 2013年05月08日 15:36
  • 1.16MB
  • 下载

SQL 解析XML数据示例

  • 2017年05月12日 16:06
  • 1KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:HttpUtils解析xml数据
举报原因:
原因补充:

(最多只允许输入30个字)