csdn_gyh 2016-01-25 12:04 采纳率: 100%
浏览 1316
已采纳

HttpClientGet 传输问题

图片说明我一直不明白 就这几行代码 单独在一个工程可以,就这么复制黏贴就爆空指针异常,我真的,已经陷入无限循环两天了
求大神指点迷津
上代码
public class Personlogin1 extends Activity {
private HttpClient client = null;
private Button on_login;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_personlogin1);

    on_login = (Button) findViewById(R.id.onlogin);
    on_login.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub

            readNet("http://www.weather.com.cn/adat/cityinfo/101010100.html");
        }

        public void readNet(String url) {
            new AsyncTask<String, Void, String>() {

                @Override
                protected String doInBackground(String... arg0) {
                    System.out.println("1");
                    String urlString = arg0[0];
                    System.out.println("2");
                    HttpGet get = new HttpGet(urlString);
                    try {
                        System.out.println("3");
                        HttpResponse response = client.execute(get);

                        System.out.println("4");
                        String value = EntityUtils.toString(response.getEntity());
                         System.out.println("44444444"+value);

                        System.out.println("5");
                        return value;
                    } catch (ClientProtocolException e) {
                        // TODO Auto-generated catch block

                        System.out.println("6");
                        e.printStackTrace();
                    } catch (IOException e) {
                        // TODO Auto-generated catch block

                        System.out.println("7");
                        e.printStackTrace();
                    }
                    return null;
                }

                @Override
                protected void onPostExecute(String result) {
                    System.out.println(result);
                }
            }.execute(url);
        }

    });  
    代码就这些       ![图片说明](https://img-ask.csdn.net/upload/201601/25/1453723473_824864.png)
  • 写回答

3条回答

  • tony4geek 2016-01-26 01:17
    关注

    大哥 你的 client 为null 又没有实例化,下面就直接执行execute 方法,所以直接报null 出错了
    private HttpClient client = null;

    HttpResponse response = client.execute(get);

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换