黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

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

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

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

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);    
  } 

 

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 黄色一级播放 | 一区二区在线看 | 天天擦天天干 | 欧美激情在线精品一区二区 | 色综合天天综合高清网国产 | 成年人免费毛片 | 午夜嘿嘿嘿| 色综合第一页 | 丝袜美女网 | 日本一视频一区视频二区 | 成年视频免费观看 | 故意坐公交忘穿内裤被挺进小说 | 综合亚洲色图 | 伊人热人久久中文字幕 | 中文字幕日韩理论在线 | 91看片淫黄大片欧美看国产片 | 亚洲高清二区 | 国产日韩欧美另类 | 最近的2019中文字幕免费一页 | 天天操夜夜艹 | 欧美亚洲综合在线观看 | 国产精品偷伦视频播放 | 国产免费叼嘿在线观看 | 亚洲综合在线播放 | 午夜激情福利在线 | 成人a毛片一级 | 夜夜做日日做夜夜爽 | 欧美亚洲综合另类成人 | 久久yy| 毛片一级片 | 色片视频 | 天天摸天天揉天天碰天天弄 | 天海翼一区二区三区四区 | 欧美精品亚洲精品日韩专 | 亚洲欧洲在线视频 | 中文国产成人精品久久无广告 | 在线观看中文字幕 | 欧美日韩一道本 | 亚洲精品亚洲人成在线观看麻豆 | 男女摸下面刺激免费视频软件 | 天天干天天操天天干 |