大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java從服務器下載文件的示例

Java從服務器下載文件的示例

更新時間:2022-04-01 10:27:38 來源:動力節點 瀏覽3282次

1.基礎知識

當我們想要下載網站上的某個資源時,我們會獲取一個url,它是服務器定位資源的一個描述,下載的過程有如下幾步:

(1)客戶端發起一個url請求,獲取連接對象。

(2)服務器解析url,并且將指定的資源返回一個輸入流給客戶。

(3)建立存儲的目錄以及保存的文件名。

(4)輸出了寫數據。

(5)關閉輸入流和輸出流。

2.實現代碼的方法

/** 
 * @功能 下載臨時素材接口 
 * @param filePath 文件將要保存的目錄 
 * @param method 請求方法,包括POST和GET 
 * @param url 請求的路徑 
 * @return 
 */  
public static File saveUrlAs(String url,String filePath,String method){ 
   //System.out.println("fileName---->"+filePath); 
   //創建不同的文件夾目錄 
   File file=new File(filePath); 
   //判斷文件夾是否存在 
   if (!file.exists()) 
  { 
    //如果文件夾不存在,則創建新的的文件夾 
     file.mkdirs(); 
  } 
   FileOutputStream fileOut = null; 
   HttpURLConnection conn = null; 
   InputStream inputStream = null; 
   try
  { 
     // 建立鏈接 
     URL httpUrl=new URL(url); 
     conn=(HttpURLConnection) httpUrl.openConnection(); 
     //以Post方式提交表單,默認get方式 
     conn.setRequestMethod(method); 
     conn.setDoInput(true);  
     conn.setDoOutput(true); 
     // post方式不能使用緩存  
     conn.setUseCaches(false); 
     //連接指定的資源  
     conn.connect(); 
     //獲取網絡輸入流 
     inputStream=conn.getInputStream(); 
     BufferedInputStream bis = new BufferedInputStream(inputStream); 
     //判斷文件的保存路徑后面是否以/結尾 
     if (!filePath.endsWith("/")) {   
       filePath += "/";   
       } 
     //寫入到文件(注意文件保存路徑的后面一定要加上文件的名稱) 
     fileOut = new FileOutputStream(filePath+"123.png"); 
     BufferedOutputStream bos = new BufferedOutputStream(fileOut);        
     byte[] buf = new byte[4096]; 
     int length = bis.read(buf); 
     //保存文件 
     while(length != -1) 
     { 
       bos.write(buf, 0, length); 
       length = bis.read(buf); 
     } 
     bos.close(); 
     bis.close(); 
     conn.disconnect(); 
  } catch (Exception e) 
  { 
     e.printStackTrace(); 
     System.out.println("拋出異常!!"); 
  }      
   return file;     
 }

3.代碼測試類(主函數)

/** 
   * @param args 
   */
  public static void main(String[] args) 
  { 
    String photoUrl = "https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png";                   
    String fileName = photoUrl.substring(photoUrl.lastIndexOf("/"));  
    //System.out.println("fileName---->"+fileName); 
    String filePath = "d:";  
    File file = saveUrlAs(photoUrl, filePath + fileName,"GET");  
    System.out.println("Run ok!/n<BR>Get URL file " + file);    
  } 

 

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 狠狠综合视频精品播放 | 亚洲国产精品久久久久久 | 亚洲免费美女视频 | 久久国内精品视频 | 四虎影视库| 国产亚洲精彩视频 | 国产毛片视频网站 | www国产视频 | 久久天天躁狠狠躁夜夜爽 | 久久香蕉国产线看观看网站 | 青草视频国产 | 青青草免费视频在线播放 | 久久久这里只有免费精品2018 | 97在线观看视频免费 | 天天综合网天天做天天受 | 亚洲精品美女久久久久 | 天天视频黄 | 国产精品手机视频 | 毛片女女女女女女女女女 | 中国明星一级毛片免费 | 日日添天天做天天爱 | 性欧美久久| 国产在线观看一区二区三区 | 久久大香伊蕉在人线国产昨爱 | 日日夜夜天天人人 | 国产日韩精品一区在线不卡 | heyzo在线播放4k岛国 | 欧美一级片在线免费观看 | 国产精品手机视频 | 黄色毛片毛茸茸 | 最新久久精品 | 一级片影院 | 米奇精品一区二区三区 | 免费一级欧美片在线观看 | 天天做天天爱天天爽天天综合 | 久久精品国产亚洲aa | 欧美一级毛片在线一看 | 国产精品乱码一区二区三区 | 国产一区二区三区在线观看精品 | 亚洲成a| 国产亚洲福利精品一区 |