织梦CMS - 轻松建站从此开始!

罗索

当前位置: 主页>嵌入式开发>Android>

Android HttpURLConnection和HttpClient获取网络内容

落鹤生 发布于 2012-05-30 00:28 点击:次 
Android开发网络相关应用,可以用HttpURLConnection和HttpClient这两个类来获取网络相关内容。
TAG:

Android开发网络相关应用,可以用HttpURLConnection和HttpClient这两个类来获取网络相关内容。

1、用HttpURLConnection获取网络内容

核心代码如下,网络内容用string content返回:

  1. public static String getContent(String url) throws Exception{ 
  2. // URL 
  3. URL Url = new URL(url); 
  4.  
  5. // HttpURLConnection 
  6. HttpURLConnection httpconn = (HttpURLConnection) Url.openConnection(); 
  7.  
  8. //连接 超时时间 
  9. httpconn.setConnectTimeout(3000); 
  10. //Socket 超时时间 
  11. httpconn.setReadTimeout(5000); 
  12.  
  13. String content = ""
  14.  
  15. if (httpconn.getResponseCode() == HttpURLConnection.HTTP_OK) { 
  16. // InputStreamReader 
  17. InputStreamReader isr = new InputStreamReader(httpconn.getInputStream(), "utf-8"); 
  18.  
  19. //int len = httpconn.getContentLength(); 
  20. //System.out.printf("len[%d]\n",len);  
  21. //read type 1 
  22. int i; 
  23. while ((i = isr.read()) != -1) { 
  24. content = content + (char) i; 
  25. isr.close(); 
  26.  
  27. //disconnect 
  28. httpconn.disconnect(); 
  29. return content; 

2、用HttpClient获取网络内容

核心代码如下,网络内容用string content返回:

  1. public static String getContent(String url) throws Exception{ 
  2. StringBuilder sb = new StringBuilder(); 
  3.  
  4. DefaultHttpClient client = new DefaultHttpClient(); 
  5.  
  6. HttpParams httpParams = client.getParams(); 
  7.  
  8. //连接 超时时间 
  9. HttpConnectionParams.setConnectionTimeout(httpParams, 3000); 
  10.  
  11. //Socket 超时时间 
  12. HttpConnectionParams.setSoTimeout(httpParams, 5000); 
  13. HttpResponse response = client.execute(new HttpGet(url)); 
  14. HttpEntity entity = response.getEntity(); 
  15.  
  16. if (entity != null) { 
  17.    BufferedReader reader = 
  18. new BufferedReader(new InputStreamReader(entity.getContent(), "UTF-8"), 8192); 
  19.  
  20.     String line = null
  21.  
  22.     while ((line = reader.readLine())!= null){ 
  23.  
  24.         sb.append(line + "\n"); 
  25.  
  26.     } 
  27.  
  28.     reader.close(); 
  29.  
  30.  
  31. return sb.toString(); 

 

(wo为爱痴狂)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net/a/201205/16041.html]
本文出处:新浪博客 作者:wo为爱痴狂 原文
顶一下
(1)
100%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容