Android 网络应用重点———使用HttpURLConnection 上传文件

来源:互联网 发布:交换机 mac 编辑:程序博客网 时间:2024/05/21 17:27

HttpURLConnection 具有完全的访问网络功能,可以取代HttpGet和HttpPost ,使用HttpURLConnection访问URL资源分为以下几步:

1. 使用java.net.URL 封装Http资源的URL,通过openConnection()获得HttpUrlConnection对象

2.  设置请求方法,setRequestMethod(String str),str必须是大写,如GET,POST

3.  设置输入输出及其他权限

4.  设置HTTP请求头

5.  输入和输出数据

6.  关闭输入输出流

相应代码如下:

1.   URL url =  new URL(http://www.blogjava.net/archive/2009/12/14/305890.html);

      HttpURLConnection  httpurlConnection =  (HttpURLConnection)url.openConnection();

2.  httpurlConnection.setRequestMethod("POST");

3.  // 下载HTTP资源,需要将setDoInput()的参数设为true

     httpurlConnection.setDoInput();               // 设置为可读取, 用于下载

     //上传数据,需要将setDoOutput的参数设为true

     httpurlConnection.setDoOutput(true);      // 设置为可写入,  用于上传

4.  httpurlConnection.setRequestProperty("Charset","UTF-8"); // 设置Charset 请求头的值为UTF-8

5.  InputStream  is = httpurlConnection.getInputStream();

    OutputStream os = httpurlConnection.getOutputStream();

6.  is.close();

     os.close(); 

以下是一个 上传文件 的示例

基本原理:先定义好写入流,再读取文件(根据文件名参数),再写到服务器上

具体代码参见my_upload、ch09_uploadfile工程,运行时先启动my_upload服务器端

原创粉丝点击