Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> android之文件下載

android之文件下載

日期:2017/2/23 14:22:46      編輯:關於Android編程

android之文件下載

android文件下載有三個要點

不能在主線程中下載文件 在配置文件中給定權限 使用http協議的get方法連接網絡下載文件

做好這三點就可以成功的下載文件了,前面兩點非常簡單,但很容易忘記
一般程序崩潰都是因為這兩個原因啦。而重點學習了如何使用http協議中的get方法。

public class Download { 
    /**
     * 文本文件下載方法,接受下載地址的URL,返回一個字符串
     */
    public String download(String urlString){
        StringBuffer sb = new StringBuffer();
        BufferedReader reader = null;
        String line = null;
        try {   
            //創建一個HttpClient對象
            HttpClient client = new DefaultHttpClient();
            //創建一個HttpGet對象,將urlString傳遞給構造函數
            HttpGet httpGet = new HttpGet(urlString);
            //執行這個請求對象,從服務器得到響應
            HttpResponse response = client.execute(httpGet);
            //得到響應中的狀態碼
            int code = response.getStatusLine().getStatusCode();
            //200為正常響應的狀態碼,其他為網絡連接錯誤
            if (code == 200) {
                //從響應中得到實體,再從實體中得到輸入流
                InputStream  inputStream = response.getEntity().getContent();
                //將輸入流轉換為字符串流,便於處理
                reader = new BufferedReader(new InputStreamReader(inputStream));
                while ((line = reader.readLine())!=null) {
                    sb.append(line);
                }
            }
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return sb.toString();
}

\

成功從自己搭建的本地服務器tomcat中下載到xml文件

其實get方法還是非常好理解的。

關鍵在於發出請求—–>得到響應—–>分析響應是否正確—->處理響應內容。

當然,get方法在從服務器請求數據時比較好用,向服務器發送數據的時候,更多的使用的是post方法。由於這次是下載,就直接使用了get方法。下面是post方法與get方法的區別。

在客戶端,Get方式在通過URL提交數據,數據在URL中可以看到;POST方式,數據放置在HTML HEADER內提交。

GET方式提交的數據最多只能有1024字節,而POST則沒有此限制。

安全性問題。使用 Get 的時候,參數會顯示在地址欄上,而 Post 不會。所以,如果這些數據是中文數據而且是非敏感數據,那麼使用 get;如果用戶輸入的數據不是中文字符而且包含敏感數據,那麼還是使用 post為好。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved