<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 93,  comments - 2,  trackbacks - 0
    例子如下:
      1 File file = new File(filePath);
      2             if(file.exists()){
      3                 String END = "\r\n";
      4                 String PREFIX = "--" ;
      5                 String BOUNDARY =  UUID.randomUUID().toString();  //邊界標識   隨機生成
      6                 String CONTENT_TYPE = "multipart/form-data";   //內容類型
      7                 
      8                 InputStream inputStream = null;
      9                 FileInputStream fileStream = null;
     10                 DataOutputStream dos = null;
     11                 HttpURLConnection conn = null;
     12                 try {
     13                     URL url = new URL(Constant.URL_SECONDHAN_TAKEPHOTOATHAND);
     14                     conn = (HttpURLConnection) url.openConnection();
     15                     /*設置時間*/
     16                     conn.setReadTimeout(10*1000);
     17                     conn.setConnectTimeout(10*1000);
     18                     
     19                     /*允許Input,output,不使用Cache*/
     20                     conn.setDoInput(true);
     21                     conn.setDoOutput(true);
     22                     conn.setUseCaches(false);
     23                     
     24                     /*設置傳送的method=POST*/
     25                     conn.setRequestMethod("POST");
     26                     conn.setRequestProperty("Connection", "Keep-Alive");
     27                     conn.setRequestProperty("Charset", "UTF-8");
     28                     conn.setRequestProperty("Content-Type", CONTENT_TYPE + ";boundary=" + BOUNDARY); 
     29                     
     30                     /* 設置DataOutputStream */
     31                     dos = new DataOutputStream(conn.getOutputStream());
     32                     
     33                     StringBuffer sb = new StringBuffer();
     34                     sb.append(PREFIX);
     35                     sb.append(BOUNDARY);
     36                     sb.append(END);
     37                     /**
     38                      * 這里重點注意:
     39                      * name里面的值為服務器端需要key   只有這個key 才可以得到對應的文件
     40                      * filename是文件的名字,包含后綴名的   比如:abc.png  
     41                      */
     42                     sb.append("Content-Disposition: form-data; name=\"UpLoadFile\"; filename=\""+file.getName()+"\""+END); 
     43                     sb.append("Content-Type: application/x-zip-compressed; charset=utf-8"+END);
     44                     sb.append(END);
     45                     dos.write(sb.toString().getBytes());
     46                     
     47                     /*取得文件的FileInputStream*/
     48                     fileStream = new FileInputStream(file);
     49                     
     50                     /*設置每次寫入1024bytes*/
     51                     int bufferSize = 1024;
     52                     byte[] buffer = new byte[bufferSize];
     53                     int length = -1;
     54                     
     55                     /*從文件讀取數據至緩沖區*/
     56                     while((length=fileStream.read(buffer))!=-1){
     57                         dos.write(buffer,0,length);
     58                     }
     59                     dos.write(END.getBytes());
     60                     byte[] end_data = (PREFIX+BOUNDARY+PREFIX+END).getBytes();
     61                     dos.write(end_data);
     62                     dos.flush();
     63                     
     64                     /* 取得Response內容 */
     65                     InputStream is = conn.getInputStream();
     66                     int ch;
     67                     StringBuffer b =new StringBuffer();
     68                     while( ( ch = is.read() ) != -1 ){
     69                         b.append( (char)ch );
     70                     }
     71                     String result = b.toString();
     72                     
     73                 } catch (SocketTimeoutException e) {
     74                     AgUtils.log("", " upload SocketTimeoutException");
     75                     mHandler.sendEmptyMessage(4);
     76                     e.printStackTrace();
     77                 } catch (ConnectTimeoutException e) {
     78                     AgUtils.log("", " download ConnectTimeoutException");
     79                     mHandler.sendEmptyMessage(4);
     80                     e.printStackTrace();
     81                 } catch (UnknownHostException e) {
     82                     AgUtils.log("", " download UnknownHostException");
     83                     mHandler.sendEmptyMessage(4);
     84                     e.printStackTrace();
     85                 } catch (MalformedURLException e) {
     86                     AgUtils.log("", " download MalformedURLException");
     87                     mHandler.sendEmptyMessage(4);
     88                     e.printStackTrace();
     89                 } catch (ProtocolException e) {
     90                     AgUtils.log("", " ProtocolException");
     91                     e.printStackTrace();
     92                     mHandler.sendEmptyMessage(2);
     93                 } catch (IOException e) {
     94                     AgUtils.log("", " IOException");
     95                     mHandler.sendEmptyMessage(0);
     96                     e.printStackTrace();
     97                 } finally {
     98                     XqshService.this.sendBroadcast(new Intent(INTENT_UPLOAD_COMPLETE));
     99                     try {
    100                         if (fileStream != null) {
    101                             fileStream.close();
    102                         }
    103                         if (inputStream != null) {
    104                             inputStream.close();
    105                         }
    106                         if (dos != null) {
    107                             dos.close();
    108                         }
    109                         
    110                         if (conn != null) {
    111                             conn.disconnect();
    112                             conn = null;
    113                         }
    114                     } catch (IOException e) {
    115                         e.printStackTrace();
    116                     }
    117                 }
    118             }
    posted on 2014-09-11 08:16 Terry Zou 閱讀(180) 評論(0)  編輯  收藏 所屬分類: Android
    <2014年9月>
    31123456
    78910111213
    14151617181920
    21222324252627
    2829301234
    567891011

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    相冊

    收藏夾

    Java

    搜索

    •  

    最新隨筆

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 日本在线看片免费| 亚洲色大成网站www永久网站| 国产亚洲美日韩AV中文字幕无码成人| 四虎影视永久免费观看| 国产精品美女自在线观看免费| 大地资源在线观看免费高清| 欧美a级在线现免费观看| 最近2019中文免费字幕| 好爽…又高潮了免费毛片| 男人的好免费观看在线视频| 成人免费无码大片A毛片抽搐色欲 成人免费无码大片a毛片 | 国语成本人片免费av无码| 好男人看视频免费2019中文 | 最新国产乱人伦偷精品免费网站| 免费一区二区三区| 99久久99热精品免费观看国产| 最近中文字幕无免费| 18禁免费无码无遮挡不卡网站| 99久久99久久精品免费看蜜桃| 大地资源在线观看免费高清| 国产一级特黄高清免费大片| 亚洲AV无码之日韩精品| 亚洲熟妇无码八AV在线播放| 久久青草亚洲AV无码麻豆| 亚洲国产美女精品久久| 亚洲av永久无码精品秋霞电影秋 | 一边摸一边爽一边叫床免费视频 | 老司机免费午夜精品视频| 亚洲国产免费综合| 久久99精品国产免费观看| 成年人网站免费视频| 日产乱码一卡二卡三免费| 在线亚洲精品自拍| 亚洲视频在线观看视频| 亚洲欧美国产国产综合一区| 一边摸一边桶一边脱免费视频| 精品一区二区三区免费| 九九九精品成人免费视频| 精品亚洲一区二区三区在线观看| 亚洲av永久无码制服河南实里| 亚洲精品123区在线观看|