国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

調用瀏覽器下載圖片 java實現

2019-11-06 06:07:43
字體:
來源:轉載
供稿:網友

導論

javaWeb下載文件一般分為兩類,其中一類例如.txt,.Excel,.zip等瀏覽器可以識別的文件類型,可以利用<a><a/>標簽的鏈接實現,但是圖片的下載確比較麻煩,當使用鏈接時,瀏覽器不識別圖片的類型會將圖片打開而不是下載。實現該功能比較常見的有利用jsp下載,利用servlet下載,利用純java代碼下載。本文介紹以java代碼來實現。

利用Java代碼實現圖片的下載:

現在的企業級中大型項目一般都是利用Ajax來實現與后臺代碼的交互的,但是ajax接收二進制流比較麻煩,一般用來獲取圖片地址。本人認為使用form表單來做請求比較簡單。

jsp部分:

<iframe id="downIframe"name="downIframe" style="display:none"></iframe>

<from id="downFrom"target="downIframe"action="此處為訪問的URL">

<input type="hidden" name="pictureUrl" value="此處為系統圖片路徑"/>

</from>

注:當我們單獨使用form表單來實現時,方法會選擇跳轉到另一個頁面中,當沒有提供跳轉的目的頁面的時候,會跳轉到一個空白頁面,然后我們會想著給那個頁面提供個背景圖片,然后顯示下載成功四個大字,哈哈。。這個有點太入門了。so here使用iframe來作為form表單的目的,單獨刷新iframe區域,因為iframe僅僅存在在代碼中在頁面中看不到,所以不會影響。接下來就是java部分。

public void downPicture(HttpServletRequest request,HttpServletResponse response){

String url = request.getParameter("pictureUrl");

//獲取文件

File file = new File(url);

//將圖片讀成二進制流

FileImageInputStream  fs = new FileImageInputStream (file);

int streamLength = (int)fs.length();

byte[] image = new byte[streamLength ];

fs.read(image,0,streamLength );

fs.close();

response.serHeader("Content-Type","application/octet-stream");

response.serHeader("Content-Disposition","attachment;filename=圖片名字.圖片類型后綴");

response.getOutStream().write(image );

response.getOurStream.flush();

response.getOurStream.close();

}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 班戈县| 松阳县| 玛多县| 台前县| 旺苍县| 新化县| 洛扎县| 新兴县| 玛多县| 襄樊市| 远安县| 雷山县| 玉环县| 永仁县| 神池县| 鄂温| 富裕县| 西乡县| 荣成市| 昌宁县| 玛曲县| 三门峡市| 灌南县| 新闻| 长白| 仲巴县| 重庆市| 桂平市| 临湘市| 金平| 探索| 竹山县| 西峡县| 云霄县| 中宁县| 盱眙县| 金溪县| 保山市| 铁力市| 林口县| 台南县|