Android-网络:Http下载字符串(适用网页、XML)

  1. 通过URL地址获得URL实例。
  2. 获取URL连接实例。
  3. 通过连接实例得到二进制流,包装二进制流为字符串流。
  4. 把字符串流包装成缓冲读取流。
  5. 通过while((inputLineString=buffer.readLine())!=null)读取数据。
      btnHttp.setOnClickListener(new OnClickListener() {
              
            @Override
            public void onClick(View v) {
                btnHttp.setEnabled(false);
                
                try {
                    URL url=new URL(httpURL);
                    //获取连接
                    HttpURLConnection conn=(HttpURLConnection)url.openConnection();
                    /**
                     * 通过连接获取二进制流
                     * 并把二进制流包装为字符串流
                     */
                    InputStreamReader in =new InputStreamReader(conn.getInputStream());
                    /**
                     * BufferedReader:
                     * 带缓冲区的输入流来的,可以减少对IO的读写的次数。
                     * 它提供了一个很好用的方法:readLine();可以读取一行的字符串。
                     * 
                     * 把字符串流包装为BufferedReader方便逐行读取
                     */
                    BufferedReader buffer=new BufferedReader(in);
                    
                    String inputLineString=null;
                    String resultString=null;
                    
                    while((inputLineString=buffer.readLine())!=null)
                    {
                        resultString=resultString+inputLineString+"\n";
                    }
                    in.close();
                    conn.disconnect();
                    
                    tvHttp.setText(resultString);
                } catch (MalformedURLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                
            }
        });
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值