zoukankan      html  css  js  c++  java
  • Android 网络数据读取及解析

    微博网络数据获取及解析的示例

    OAuth auth = new OAuth();
                String url 
    = "http://api.t.sina.com.cn/statuses/friends_timeline.json";
                List
    <BasicNameValuePair> params = new ArrayList<BasicNameValuePair>();
                params.add(
    new BasicNameValuePair("source",auth.consumerKey));
                HttpResponse response 
    = auth.SignRequest(user.getId(), user.getTokenSecret(), url, params);
                
                
    if(200 == response.getStatusLine().getStatusCode())
                {
                    
    try{
                        InputStream is 
    = response.getEntity().getContent();
                        Reader reader 
    = new BufferedReader(new InputStreamReader(is),4096);
                        StringBuilder buffer 
    = new StringBuilder((int)response.getEntity().getContentLength());
                        
    try{
                            
    char[] tmp = new char[1024];
                            
    int l;
                            
    while((l=reader.read(tmp))!= -1)
                            {
                                buffer.append(tmp,
    0,l);
                            }
                        }
    finally
                        {
                            reader.close();                       
                        }
                        
                        String string 
    = buffer.toString();
                        ((org.apache.http.HttpResponse) response).getEntity().consumeContent();
                        JSONArray data 
    = new JSONArray(string);
                        
                        
    for(int i=0; i<data.length();i++)
                        {
                            JSONObject d 
    = data.getJSONObject(i);
                            
    if(d!=null)
                            {
                                JSONObject u 
    = d.getJSONObject("user");
                                
    if(d.has("retweeted_status"))
                                {
                                    JSONObject r 
    = d.getJSONObject("retweeted_status");                                
                                }
                                
                                
    //微博id
                                String id=d.getString("id");
                                String userId
    =u.getString("id");
                                String userName
    =u.getString("screen_name");
                                String userIcon
    =u.getString("profile_image_url");
    //                            Log.e("userIcon", userIcon);
                                String time=d.getString("created_at");
                                String text
    =d.getString("text");
                                Boolean haveImg
    =false;
                                
    if(d.has("thumbnail_pic")){
                                    haveImg
    =true;
                                    
    //String thumbnail_pic=d.getString("thumbnail_pic");
                                    
    //Log.e("thumbnail_pic", thumbnail_pic);
                                }
                                
                                Date startDate
    =new Date(time);
                                Date nowDate 
    = Calendar.getInstance().getTime();
                                time
    =new DateUtilsDef().twoDateDistance(startDate,nowDate);
                                
    if(wbList==null){
                                    wbList
    =new ArrayList<WeiBoInfo>();
                                }
                                WeiBoInfo w
    =new WeiBoInfo();
                                w.setId(id);
                                w.setUserId(userId);
                                w.setUserName(userName);
                                w.setTime(time 
    +" 前");
                                w.setText(text);
                                
                                w.setHaveImage(haveImg);
                                w.setUserIcon(userIcon);
                                wbList.add(w);
                            }
                        }
                        
                        
                    } 
    catch (IOException e) {
                        
    // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                    
    catch (JSONException e){
                        e.printStackTrace();
                    }
                    
    catch (IllegalStateException e)
                    {
                        e.printStackTrace();
                    }
                }
  • 相关阅读:
    Eclipse中添加MyEclipse插件
    用GWT开发的HelloGWT程序
    GWT module 'xxx' may need to be (re)compiled解决办法
    GWTDesigner_v5.1.0破解码
    Firefox火狐广告过滤插件Adblock Plus过滤规则包[中文维护小组]
    工程师们,不要想一辈子靠技术混饭吃
    PHP生成类似类似优酷、腾讯视频等其他视频链的ID
    (外挂破解)Cheat Engine(内存修改工具)V6.2中文版软件介绍
    ucos-ii核心算法分析(转)
    Websocket,ProtoBuffer,Hightlight,JSON 等,最近遇到的一些知识点小结
  • 原文地址:https://www.cnblogs.com/alwaysyouare/p/2182656.html
Copyright © 2011-2022 走看看