一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - java使用http實現文件下載學習示例

java使用http實現文件下載學習示例

2019-11-18 14:43Java教程網 JAVA教程

這篇文章主要介紹了java使用http實現文件下載學習示例,需要的朋友可以參考下

代碼如下:


package com.hongyuan.test;

 

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLDecoder;

public class FileDownload {

 public static final String LOCAL_PATH="d:/";

 public static void main(String[] args) {
  //待下載文件地址
  String fileUrl="http://211.162.55.16/cdn.baidupcs.com/file/6a73dab7c03023a9835cc737f447674d?xcode=af6ffdc43a44169bac968d32c4bd420084a9a97c308112c9&fid=3255571826-250528-130564002&time=1397293108&sign=FDTAXER-DCb740ccc5511e5e8fedcff06b081203-mQkOeRDtXpyQWwYJkI%2BxKJpxn5k%3D&to=cb&fm=N,B,U,nc&newver=1&expires=1397297563&rt=sh&r=854979042&logid=1751715936&sh=1&vuk=3255571826&fn=Web%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1%20%E7%AC%AC5%E7%89%88.pdf&wshc_tag=0&wsiphost=ipdbm";
  InputStream in=null;
  OutputStream out=null;
  HttpURLConnection conn=null;
  String fileName=null;
  try {
   //初始化連接
   URL url=new URL(fileUrl);
   conn = (HttpURLConnection) url.openConnection();
   conn.setDoInput(true);
   conn.setDoOutput(true);

   //獲取文件名
   String disposition=conn.getHeaderField("Content-Disposition");
   if(disposition!=null&&!"".equals(disposition)){
    //從頭中獲取文件名
    fileName=disposition.split(";")[1].split("=")[1].replaceAll("\"","");
   }else{
    //從地址中獲取文件名
    fileName=fileUrl.substring(fileUrl.lastIndexOf("/")+1);
   }

   if(fileName!=null&&!"".equals(fileName)){
    //文件名解碼
    fileName=URLDecoder.decode(fileName, "utf-8");
   }else{
    //如果無法獲取文件名,則隨機生成一個
    fileName="file_"+(int)(Math.random()*10);
   }

   //讀取數據
   if(conn.getResponseCode()==HttpURLConnection.HTTP_OK){
    byte[] buffer=new byte[2048];
    in = conn.getInputStream();
    out=new FileOutputStream(new File(LOCAL_PATH,fileName));
    int count=0;
    int finished=0;
    int size=conn.getContentLength();
    while((count=in.read(buffer))!=-1){
     if(count!=0){
      out.write(buffer,0,count);
      finished+=count;
      System.out.printf("########################################---->%1$.2f%%\n",(double)finished/size*100);
     }else{
      break;
     }
    }
   }
  } catch (MalformedURLException e) {
   e.printStackTrace();
  } catch (IOException e) {
   e.printStackTrace();
  }finally{
   try {
    out.close();
    in.close();
    conn.disconnect();
   } catch (IOException e) {
    e.printStackTrace();
   }
  }
 }
}

 

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产精品成人在线播放 | 交换性关系中文字幕6 | 天美影视文化传媒mv免费 | 成人福利网站含羞草 | 天天操婷婷 | 9久re在线观看视频精品 | 秒播影视 午夜福利毛片 | 国产18在线 | nhdta系列媚药系列 | 国产成人精品免费视频软件 | 精品国语对白精品自拍视 | 暖暖 免费 高清 日本 中文 | 九九久久国产精品免费热6 九九精品视频一区二区三区 | 91国在线观看 | 国产欧美日韩高清专区ho | 色久激情 | 青柠网在线观看视频 | 精品国产91高清在线观看 | 欧美整片完整片视频在线 | 国产三级精品久久三级国专区 | 亚洲ⅴa偷拍在线影院 | 久久不卡免费视频 | 无限资源在线观看高清 | 国产51社区精品视频资源 | 欧美人禽杂交在线视频 | 午夜精品国产自在现线拍 | 55夜色66夜亚州精品站 | 国产一区二区三区在线看 | 精品湿| 美女用屁股把人吞进肚子 | 亚洲国产天堂 | 1986葫芦兄弟全集免费观看第十集 | 亚洲AVAV天堂AV在线网爱情 | 5g影院天天5g爽天天看 | 韩国美女主播在线 | 精品久久久久国产免费 | 国内免费高清视频在线观看 | 免费看的毛片 | 香港三级血恋3 | 国产一区二区三区高清视频 | 别停好爽好深好大好舒服视频 |