JavaWeb下载文件

来源:互联网 发布:java内部类 编辑:程序博客网 时间:2024/06/12 17:07

在工作中遇到的一个下载文件的功能,自己将其抽取出来,代码简单,希望能帮到大家,好了,话不多说,上代码!

public void downloadFile(File file, String downName, HttpServletRequest request, HttpServletResponse response) {OutputStream out = null;FileInputStream fin = null;BufferedInputStream bin = null;try {if (file.exists()) {String finalFileName = null;String agent = request.getHeader("User-Agent");boolean isMSIE = (agent != null && agent.indexOf("MSIE") != -1);if (isMSIE) {finalFileName = URLEncoder.encode(downName, "UTF8");} else {finalFileName = new String(downName.getBytes("UTF-8"), "ISO-8859-1");}response.setContentType("application/x-msdownload");response.setHeader("Content-Disposition", "attachment; filename=".concat(finalFileName));out = response.getOutputStream();fin = new FileInputStream(file);bin = new BufferedInputStream(fin);for (int data = bin.read(); data > -1; data = bin.read()) {out.write(data);}} else {}} catch (Exception e) {e.printStackTrace();} finally {try {if (bin != null)bin.close();if (fin != null)fin.close();if (out != null)out.close();} catch (Exception e2) {e2.printStackTrace();}}}


0 0
原创粉丝点击