HttpURLConnection获取网络数据工具类
2016-10-29 15:20
387 查看
/** * 創建 * 创建人:陈坚润 * 时间:2016-10-29 * 功能:连接网络服务器,获取网上数据 * getHttpToByteArray是用來返回一個byte數組的,一般我是想用來獲取網上的圖片的 * getHttpToString是用來獲取網上數據最後以一個String類型的數據返回 */ import java.io.BufferedReader; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import java.nio.Buffer; import java.util.stream.IntStream; public class HttpUtil { /** * 功能:连接网络服务器,获取网上数据,我是用來獲取網上圖片的 * 参数:URL地址 * 返回:btye[] * */ public static byte[] getHttpToByteArray(String urlPath){ try { URL url = new URL(urlPath); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET"); connection.setConnectTimeout(8000); connection.setReadTimeout(8000); if (connection.getResponseCode() == 200) { InputStream inputStream = connection.getInputStream(); byte[] data = readStream(inputStream).toByteArray(); inputStream.close(); return data; } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } /** * 创建人:陈坚润 * 时间:2016-10-29 * 功能:连接网络服务器,获取网上数据 * 参数:URL地址 * 返回:string * */ public static String getHttpToString(String urlPath){ try { URL url = new URL(urlPath); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET"); connection.setConnectTimeout(8000); connection.setReadTimeout(8000); connection.setRequestProperty("Content-type", "text/html"); connection.setRequestProperty("Accept-Charset", "utf-8"); connection.setRequestProperty("contentType", "utf-8"); if (connection.getResponseCode() == 200) { InputStream inputStream = connection.getInputStream(); return new String(readStream(inputStream).toByteArray(),"UTF-8"); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } private static ByteArrayOutputStream readStream(InputStream inputStream){ try { ByteArrayOutputStream out = new ByteArrayOutputStream(); byte[] buffer = new byte[1024]; int len = -1; while((len = inputStream.read(buffer))!= -1){ out.write(buffer,0,len); } out.close(); inputStream.close(); return out; } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } }
相关文章推荐
- 使用 HttpURLConnection 获取不到网络数据
- Android HttpURLConnection(Get,Post方式)进行网络通信 获取数据和网络图片
- HttpURLConnection和okHttp两种获取网络数据的实现方法
- AsyncTask 与 HttpURLConnection获取网络数据
- AsyncTask+HttpURLConnection网络获取数据
- HttpURLConnection获取网络数据(实例:网路请求图片)
- Android通过HttpURLConnection链接到网络,并获取网络数据
- HttpURLConnection:网络下载数据的工具类
- 第十二篇:Android GET请求获取网络数据以及POST数据(使用HttpURLConnection)
- Android HttpClient多线程获取网络数据抛出ConnectionPoolTimeoutException: Timeout waiting for connection
- HttpURLConnection和HttpClient获取Json数据
- HttpURLConnection和HttpClient分别以GET和POST获取Json数据
- Android用httpURLConnection发送post网络请求并拿到数据
- android HttpURLConnection编程详解,获取网络图片,html代码查看
- HttpURLConnection获取网络图片
- android开发-通过HttpURLConnection获取网络内容,Bitmap把二进制格式的图片转为位图
- Android网络:HTTP之利用HttpURLConnection访问网页、获取网络图片实例 (附源码)
- HttpURLConnection和HttpClient获取Json数据
- HttpURLConnection和HttpClient获取Json数据
- Android网络:HTTP之利用HttpURLConnection访问网页、获取网络图片实例 (附源码)