【android初级】之Android获取网页数据的方法总结

本文总结了三种获取网页数据的代码,是自己在用的时候随手整理出来的。此处仅贴出函数段,不贴出import了,用的时候可以用eclipse自动import一下就行了。函数的详细用途描述请看代码中注释。调用的时候请对应函数需要的参数。

//第一种

/**获取参数(ArrayList<NameValuePair> nameValuePairs,String url)后post给远程服务器

 * 将获得的返回结果(String)返回给调用者

 * 本函数适用于查询数量较少的时候

*/

public
String posturl(ArrayList<NameValuePair> nameValuePairs,String url){

    String result ="";

    String tmp="";

    InputStream is =null;

    try{

        HttpClient httpclient =new
DefaultHttpClient();

        HttpPost httppost =new
HttpPost(url);

        httppost.setEntity(newUrlEncodedFormEntity(nameValuePairs));

        HttpResponse response = httpclient.execute(httppost);

        HttpEntity entity = response.getEntity();

        is = entity.getContent();

    }catch(Exception e){

        return"Fail to establish http connection!";

    }

 

    try{

        BufferedReader reader =new
BufferedReader(newInputStreamReader(is,"utf-8"));

        StringBuilder sb =new
StringBuilder();

        String line =null;

        while((line = reader.readLine()) !=
null) {

            sb.append(line +"\n");

        }

        is.close();

 

        tmp=sb.toString();

    }catch(Exception e){

        return"Fail to convert net stream!";

    }

 

    try{

        JSONArray jArray =new
JSONArray(tmp);

        for(inti=0;i<jArray.length();i++){

            JSONObject json_data = jArray.getJSONObject(i);

            Iterator<?> keys=json_data.keys();

            while(keys.hasNext()){

                result += json_data.getString(keys.next().toString());

            }

        }

    }catch(JSONException e){

        return"The URL you post is wrong!";

    }

 

    returnresult;

}

 

//第二种

/**获取参数指定的网页代码,将其返回给调用者,由调用者对其解析

 * 返回String

*/

public
String posturl(String url){

    InputStream is =null;

    String result ="";

 

    try{

        HttpClient httpclient =new
DefaultHttpClient();

        HttpPost httppost =new
HttpPost(url);

        HttpResponse response = httpclient.execute(httppost);

        HttpEntity entity = response.getEntity();

        is = entity.getContent();

    }catch(Exception e){

        return"Fail to establish http connection!"+e.toString();

    }

 

    try{

        BufferedReader reader =new
BufferedReader(newInputStreamReader(is,"utf-8"));

        StringBuilder sb =new
StringBuilder();

        String line =null;

        while((line = reader.readLine()) !=
null) {

            sb.append(line +"\n");

        }

        is.close();

 

        result=sb.toString();

    }catch(Exception e){

        return"Fail to convert net stream!";

    }

 

    returnresult;

}

 

//第三种

/**获取指定地址的网页数据

 * 返回数据流

*/

public
InputStream streampost(String remote_addr){

    URL infoUrl =null;

    InputStream inStream =null;

    try{

        infoUrl =new
URL(remote_addr);

        URLConnection connection = infoUrl.openConnection();

        HttpURLConnection httpConnection = (HttpURLConnection)connection;

        intresponseCode = httpConnection.getResponseCode();

        if(responseCode == HttpURLConnection.HTTP_OK){

            inStream = httpConnection.getInputStream();

        }

    }catch
(MalformedURLException e) {

        // TODO Auto-generated catch block

        e.printStackTrace();

    }catch
(IOException e) {

        // TODO Auto-generated catch block

        e.printStackTrace();

    }

    returninStream;

}

时间: 2024-08-02 03:07:00

【android初级】之Android获取网页数据的方法总结的相关文章

android-小白 在做Android新闻端 用json获取网页数据 出现如下图的报错 不知道怎么改

问题描述 小白 在做Android新闻端 用json获取网页数据 出现如下图的报错 不知道怎么改 !求告知 怎么改!可以看这个http://ask.csdn.net/questions/232048 private Handler getNewsHandler = new Handler(){ public void handleMessage(android.os.Message msg) { String jsonData = (String) msg.obj; System.out.pri

Android编程获取GPS数据的方法详解_Android

本文实例讲述了Android编程获取GPS数据的方法.分享给大家供大家参考,具体如下: GPS是Android系统中重要的组成部分,通过它可以衍生出众多的与位置相关的应用. Android的GPS有一个专门的管理类,称为LocationManager,所有的GPS定位服务都由其对象产生并进行控制. 首先需要明确的是,LocationManager类的对象获取并不是直接创建的,而是由系统提供的,具体来说,通过如下方法,为一个LocationManager对象建立一个对象引用: 复制代码 代码如下:

Android开发获取传感器数据的方法示例【加速度传感器,磁场传感器,光线传感器,方向传感器】

本文实例讲述了Android开发获取传感器数据的方法.分享给大家供大家参考,具体如下: package mobile.android.sensor; import java.util.List; import android.app.Activity; import android.hardware.Sensor; import android.hardware.SensorEvent; import android.hardware.SensorEventListener; import an

Android编程获取GPS数据的方法详解

本文实例讲述了Android编程获取GPS数据的方法.分享给大家供大家参考,具体如下: GPS是Android系统中重要的组成部分,通过它可以衍生出众多的与位置相关的应用. Android的GPS有一个专门的管理类,称为LocationManager,所有的GPS定位服务都由其对象产生并进行控制. 首先需要明确的是,LocationManager类的对象获取并不是直接创建的,而是由系统提供的,具体来说,通过如下方法,为一个LocationManager对象建立一个对象引用: 复制代码 代码如下:

Android编程获取图片数据的方法详解

本文实例讲述了Android编程获取图片数据的方法.分享给大家供大家参考,具体如下: 网络的访问在我们日常生活中太重要了,如果没有网络我们的生活将会是什么样子呢?Android手机和浏览器也是一样的,也可以通过网络通讯获取数据,如调用webservice,EJB等.下面就通过一个小例子从网络获取一幅图片并显示在手机上,开发中将会使用到一个新的组件ImageView. 1. 写一个用来处理字节流的工具类 package org.lxh.util; import java.io.ByteArrayO

java-如何获取网页数据。比如

问题描述 如何获取网页数据.比如 比如一天笑话点开评论后 会有一个评论的列表显示出来. 如何获取评论的数据. 这里本来有个号..我用{表示下同{div> div class="operation-btn"> a href="javascript:void(0)" rel="nofollow" class="comment commentClick" title="评论" obj_info=&qu

javascript-如何获取网页数据问题。。

问题描述 如何获取网页数据问题.. 软件java网络html 比如一天笑话点开评论后 会有一个评论的列表显示出来. 如何获取评论的数据. 这里本来有个尖括号..我用{表示 下同{div> div class="operation-btn"> a href="javascript:void(0)" rel="nofollow" class="comment commentClick" title="评论&q

Android利用BitMap获得图片像素数据的方法_Android

本文实例讲述了Android利用BitMap获得图片像素数据的方法.分享给大家供大家参考,具体如下: 网上看到的参考是: int[] pixels = new int[bit.getWidth()*bit.getHeight()];//保存所有的像素的数组,图片宽×高 bit.getPixels(pixels,0,bit.getWidth(),0,0,bit.getWidth(),bit.getHeight()); for(int i = 0; i < pixels.length; i++){

Android编程简单解析JSON格式数据的方法示例

本文实例讲述了Android编程简单解析JSON格式数据的方法.分享给大家供大家参考,具体如下: 比起XML,JSON主要优势在于它的体积更小,在网络上传输的时候可以更省流量.但缺点在于,它的语义性较差,显示不如XML直观. JSON格式 : { "name_A" : "value_A","name_B" : "value_B" } 表示: name_A = value_A; name_B = value_B; 我将对下面的J