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

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

Java實現文件下載的兩種方法

更新時間:2020-11-19 15:49:25 來源:動力節點 瀏覽22159次

本文實例為大家分享了Java實現文件下載的具體代碼,供大家參考,具體內容如下:

public?HttpServletResponse?download(String?path,?HttpServletResponse?response)?{
????try?{
??????//?path是指欲下載的文件的路徑。
??????File?file?=?new?File(path);
??????//?取得文件名。
??????String?filename?=?file.getName();
??????//?取得文件的后綴名。
??????String?ext?=?filename.substring(filename.lastIndexOf(".")?+?1).toUpperCase();

??????//?以流的形式下載文件。
??????InputStream?fis?=?new?BufferedInputStream(new?FileInputStream(path));
??????byte[]?buffer?=?new?byte[fis.available()];
??????fis.read(buffer);
??????fis.close();
??????//?清空response
??????response.reset();
??????//?設置response的Header
??????response.addHeader("Content-Disposition",?"attachment;filename="?+?new?String(filename.getBytes()));
??????response.addHeader("Content-Length",?""?+?file.length());
??????OutputStream?toClient?=?new?BufferedOutputStream(response.getOutputStream());
??????response.setContentType("application/octet-stream");
??????toClient.write(buffer);
??????toClient.flush();
??????toClient.close();
????}?catch?(IOException?ex)?{
??????ex.printStackTrace();
????}
????return?response;
??}

??public?void?downloadLocal(HttpServletResponse?response)?throws?FileNotFoundException?{
????//?下載本地文件
????String?fileName?=?"Operator.doc".toString();?//?文件的默認保存名
????//?讀到流中
????InputStream?inStream?=?new?FileInputStream("c:/Operator.doc");//?文件的存放路徑
????//?設置輸出的格式
????response.reset();
????response.setContentType("bin");
????response.addHeader("Content-Disposition",?"attachment;?filename=\""?+?fileName?+?"\"");
????//?循環取出流中的數據
????byte[]?b?=?new?byte[100];
????int?len;
????try?{
??????while?((len?=?inStream.read(b))?>?0)
????????response.getOutputStream().write(b,?0,?len);
??????inStream.close();
????}?catch?(IOException?e)?{
??????e.printStackTrace();
????}
??}

??public?void?downloadNet(HttpServletResponse?response)?throws?MalformedURLException?{
????//?下載網絡文件
????int?bytesum?=?0;
????int?byteread?=?0;

????URL?url?=?new?URL("windine.blogdriver.com/logo.gif");

????try?{
??????URLConnection?conn?=?url.openConnection();
??????InputStream?inStream?=?conn.getInputStream();
??????FileOutputStream?fs?=?new?FileOutputStream("c:/abc.gif");

??????byte[]?buffer?=?new?byte[1204];
??????int?length;
??????while?((byteread?=?inStream.read(buffer))?!=?-1)?{
????????bytesum?+=?byteread;
????????System.out.println(bytesum);
????????fs.write(buffer,?0,?byteread);
??????}
????}?catch?(FileNotFoundException?e)?{
??????e.printStackTrace();
????}?catch?(IOException?e)?{
??????e.printStackTrace();
????}
??}


//支持在線打開文件的一種方式

public?void?downLoad(String?filePath,?HttpServletResponse?response,?boolean?isOnLine)?throws?Exception?{
????File?f?=?new?File(filePath);
????if?(!f.exists())?{
??????response.sendError(404,?"File?not?found!");
??????return;
????}
????BufferedInputStream?br?=?new?BufferedInputStream(new?FileInputStream(f));
????byte[]?buf?=?new?byte[1024];
????int?len?=?0;

????response.reset();?//?非常重要
????if?(isOnLine)?{?//?在線打開方式
??????URL?u?=?new?URL("file:///"?+?filePath);
??????response.setContentType(u.openConnection().getContentType());
??????response.setHeader("Content-Disposition",?"inline;?filename="?+?f.getName());
??????//?文件名應該編碼成UTF-8
????}?else?{?//?純下載方式
??????response.setContentType("application/x-msdownload");
??????response.setHeader("Content-Disposition",?"attachment;?filename="?+?f.getName());
????}
????OutputStream?out?=?response.getOutputStream();
????while?((len?=?br.read(buf))?>?0)
??????out.write(buf,?0,?len);
????br.close();
????out.close();
??}

以上就是動力節點java培訓機構的小編針對“Java實現文件下載的兩種方法”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 成人免费视频在 | 免费看人做人爱视频拍拍拍 | 国产精品久久久久久五月尺 | 日日爽 | 华人亚洲欧美精品国产 | 久久99精品久久久久久综合 | 99视频在线观看免费 | 中文字幕日韩专区 | 亚洲第一区二区快射影院 | 精品福利视频第一 | 午夜私人| 91视频首页 | 日本中文字幕二区三区 | 久久国产精品视频一区 | 偷偷操不一样的久久 | 亚洲精品第一国产麻豆 | 亚洲天码中字 | 亚洲性生活 | 亚洲欧美日韩中文字幕在线一区 | 国产福利免费视频 | 毛片大全免费看 | 九月婷婷天天澡天天添天天爽 | 黄色网在线 | 色视屏| 一级毛片免费视频 | 热久久精品免费视频 | 九九视频免费 | 91久久夜色精品国产网站 | 精品国产乱码一区二区三区 | 377p亚洲欧洲日本大胆色噜噜 | 夜夜操天天干 | 中文字幕精品视频在线 | 日本毛片高清免费视频 | 91久久精品一区二区三区 | 天天插天天操天天射 | 欧美一级爱爱视频 | 狠狠舔| 欧美vs日韩vs国产在线观看 | 国产成人一区二区三区在线播放 | 国产美女在线免费观看 | 精品伊人久久大香线蕉网站 |