1. 程式人生 > >javaweb檔案下載方式總結

javaweb檔案下載方式總結

java中常用的兩種下載方式總結:

1)將檔案放在webroot目錄中,WEB-INF外,這樣當請求下載時,返回頁面一個相對路徑或者絕對路徑(即將可訪問資原始檔直接返回給頁面),通過頁面訪問資源的形式,進行下載;

2)將資源的輸入流寫入response的輸出流,再將攜帶資源流的response返回頁面,達到下載目的

        public void download(String sPath, HttpServletResponse response) {
File oFile = new File(sPath);
if (!oFile.exists()) {
return;
}
response.setContentType("application/octet-stream");
response.addHeader("Content-Disposition", "attachment;filename=" + oFile.getName());
response.addHeader("Content-Length", "" + oFile.length());
InputStream oInputStream = null;
try {
oInputStream = new FileInputStream(oFile);
ServletOutputStream sops = response.getOutputStream();
byte[] buffer = new byte[1024];
int nTempLength = 0;
while ((nTempLength = oInputStream.read(buffer, 0, 1024)) != -1) {
sops.write(buffer, 0, nTempLength);
}
} catch(IOException e) {
e.printStackTrace();
} finally {
                if (oInputStream != null) {
                try {
oInputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
                }
}
}

相關推薦

javaweb檔案下載方式總結

java中常用的兩種下載方式總結: 1)將檔案放在webroot目錄中,WEB-INF外,這樣當請求下載時,返回頁面一個相對路徑或者絕對路徑(即將可訪問資原始檔直接返回給頁面),通過頁面訪問資源的形式

python爬蟲之下載檔案方式總結以及程式例項

  python爬蟲之下載檔案的方式以及下載例項     目錄 第一種方法:urlretrieve方法下載 第二種方法:request download 第三種方法:視訊檔案、大型檔案下載 實戰演示   第一種方法:urlretrieve方法下載

javaweb 檔案下載

Java後臺檔案下載的方法: public HttpServletResponse download(String path, HttpServletResponse response) { try { // path是指欲下載的檔案的路徑。

struts2驗證規則validation配置檔案命名方式總結

1、Action級別校驗命名格式: ActionClassName-validation.xml 2、Action中某個方法的校驗命名格式: ActionClassName-ActionAliasName-va

詳解django三種檔案下載方式

推薦使用FileResponse,從原始碼中可以看出FileResponse是StreamingHttpResponse的子類,內部使用迭代器進行資料流傳輸。 在實際的專案中很多時候需要用到下載功能,如導excel、pdf或者檔案下載,當然你可以使用web服務自己搭建可以用於下載的資源伺服器, 如nginx

Asp.net 中幾種檔案下載方式

C# code ASP.NET檔案下載 //TransmitFile實現下載 protected void Button1_Click(object sender, EventArgs e) { /* 微軟為Response

JavaWeb筆記-22-檔案下載

1、檔案下載 下載:向客戶端響應位元組資料。(原來響應的是html的字元資料) 做法:把一個檔案變成位元組陣列,使用response.getOutputStream();來響應給瀏覽器 要求:兩個頭、一個流 Content-Type頭:傳遞給客戶端的MIME型別

Javaweb專案下載檔案時設定檔名

控制層傳入HttpServletResponse response物件 // 內容配置中要轉碼,inline 瀏覽器支援的格式// response.setHeader("Content-Disposition", "inline;fileName=\"" + new String((lawdoc.getL

JavaWeb檔案的上傳和下載

                                          &

JavaScript~檔案下載的幾種方式

1.通過a標籤的方式來下載 <a href='' target='_blank'></a> 2.通過提交form表單的方式 var $form = $('<form action="'+url+'" 

在瀏覽器上開啟swf檔案時變成了下載swf檔案解決方式

  <html> <head> <title>早日脫單</title> <style type="text/css"> embed { width:154

前端資料流檔案下載三種方式

1、直接使用get請求方式進行下載: window.open(`${url}?${qs.stringify(param)}`, '_blank'); 2、使用form 表單post請求進行下載: const postDownloadFile = (action, param) =>

三種方式讓 Android WebView 支援檔案下載

最近在開發的過程中遇到一個需求,那就是讓 WebView 支援檔案下載,比如說下載 apk。WebView 預設是不支援下載的,需要開發者自己實現。既然 PM 提出了需求,那咱就擼起袖子幹唄,於是乎在網上尋找了幾種方法,主要思路有這麼幾種: 跳轉瀏覽器下載 使用系統的下載

【SSM】檔案下載的兩種方式

檔案下載的兩種方式 第一種:檔名和大小都是固定的 第二種:檔案有很多,檔名不固定 今天專案中用到了一個檔案下載的方式,將一個app放在伺服器上,可以直接下載,剛開始想到了使用輸出檔案流的方式,思路有了,就直接上手寫了,參考網上的資料,整理出來了一

總結一下我寫過的讀檔案方式

讀取excel # 讀取excel worksheet = xlrd.open_workbook(filepath) table = worksheet.sheet_by_index(1)#讀取第一個sheet裡面的類容 datas=[] # 第一行和第二行的內

aiohttp web方式提供檔案下載服務

python3.6使用了aiohttp, aiofiles庫,非同步操作服務端程式碼如下,啟動服務後,預設監聽0.0.0.0:8080沒有做任何異常處理,適用於小檔案,僅供參考 file_server.py: import aiofiles import asyncio import os from ai

java檔案下載的幾種方式

 轉載地址 1.通過流下載 public void download(String id, HttpServletResponse response) { response.setHeader("Access-Control-Allow-Origin",

java實現檔案下載的三種方式

public HttpServletResponse download(String path, HttpServletResponse response) {         try {          

javaweb實現檔案下載(包含.txt檔案等預設在瀏覽器中開啟的檔案

檔案下載  剛開始研究檔案下載是找有關js的方法,找了好多發現對於.txt、.xls等檔案在瀏覽器中還是開啟,或者就是跨域問題。後來通過查詢資料發現可以在後臺對http相應頭設定引數,而且實現起來也不復雜。現總結如下: 文章參考 《javaweb檔案下載》、《根據網路url 實現w

JavaWeb(十四)-檔案下載

標題:檔案下載 一、思路: 把一個檔案變成位元組陣列,使用response.getOutputStream()來響應瀏覽器 下載要求(兩個頭,一個流) 第一個頭:content-Type;傳遞到客戶端的檔案是什麼MIME型別。例如:image/pjeg