麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > 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();

}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产精品美女一区二区 | 精精国产xxxx视频在线野外 | 国产日韩线路一线路二 | 国产五区 | 精品国产中文字幕 | 黄色免费电影网址 | 精品国产一区二区三区成人影院 | 天堂成人国产精品一区 | 日本精品视频一区二区三区四区 | 毛片电影在线看 | 国产噜噜噜噜噜久久久久久久久 | 草妞视频 | 成人超碰 | 我爱我色成人网 | 第一区免费在线观看 | 国产91精品欧美 | 手机免费看一级片 | 伊人99在线 | 欧美成人视 | 粉嫩蜜桃麻豆免费大片 | 中文字幕综合 | 久草手机在线视频 | www亚洲免费 | 欧美一级无毛 | 欧美一级黄色影院 | 一本色道久久综合亚洲精品图片 | 亚洲欧美aⅴ| 龙床上的呻吟高h | 中国fx性欧美xxxx | av成人免费看 | 中文字幕视频在线播放 | 精品国产乱码一区二区 | 一区国产视频 | 日韩一级片毛片 | 免费欧美 | 羞羞网站在线看 | 久久精品久久精品国产大片 | 羞羞电影在线观看 | 日本黄色a视频 | 欧美成人二区 | 欧美精品欧美极品欧美激情 |