文章标题

来源:互联网 发布:navmesh 寻路算法 编辑:程序博客网 时间:2024/06/05 20:30

HttpConnection

不同版本设置超时时间方式不同。

/**HttpConnection **********************/HttpClient httpClient = new DefaultHttpClient();HttpGet httpGet = new HttpGet(url);HttpParams params = httpClient.getParams();HttpConnectionParams.setConnectionTimeout(params, 5000);HttpConnectionParams.setSoTimeout(params, 5000);Message msg = new Message();try {    HttpResponse httpResponse = httpClient.execute(httpGet);    StatusLine statusLine = httpResponse.getStatusLine();    if (statusLine.getStatusCode() == 200) {        String filePath = mContext.getExternalCacheDir()                + fileName; // 文件路径        File file = new File(filePath);        FileOutputStream outputStream = new FileOutputStream(                file);        InputStream inputStream = httpResponse.getEntity()                .getContent();        byte b[] = new byte[1024];        int j = 0;        while ((j = inputStream.read(b)) != -1) {            outputStream.write(b, 0, j);        }        outputStream.flush();        outputStream.close();        InputStreamReader read = new InputStreamReader(                new FileInputStream(file), "UTF-16");        BufferedReader reader = new BufferedReader(read);        StringBuilder result = new StringBuilder();        String line;        while ((line = reader.readLine()) != null) {            result.append(line);        }        Log.d(TAG, "获取数据=" + result.toString());        read.close();    } else {        Log.d(TAG, "获取数据失败");    }} catch (Exception e) {    e.printStackTrace();    Log.d(TAG, "获取数据失败!");} finally {    httpClient.getConnectionManager().shutdown();}/**HttpURLConnection*****************************/HttpURLConnection urlConn = null;URL url = null;try {    url = new URL("http://.......");    urlConn = (HttpURLConnection) url.openConnection();    urlConn.setDoInput(true); // 设置输入流采用字节流    urlConn.setDoOutput(true); // 设置输出流采用字节流    urlConn.setRequestMethod("POST");    urlConn.setUseCaches(false);// 设置缓存    urlConn.setRequestProperty("Content-Type",            "application/x-www-form-urlencoded");    urlConn.setRequestProperty("Charset", "utf-8");    urlConn.connect();    if (200 == urlConn.getResponseCode()) {        BufferedReader br = new BufferedReader(                new InputStreamReader(urlConn.getInputStream(),                        "utf-16"));        String line = "";        StringBuilder result = new StringBuilder();        while (null != (line = br.readLine())) {            result.append(line);        }        Log.d(TAG, "接到的数据= " + result.toString());        br.close();        urlConn.disconnect();    } else {        Log.d(TAG, "获取数据失败");    }} catch (Exception e) {    e.printStackTrace();    Log.d(TAG, "获取数据失败!");}
原创粉丝点击