JavaWeb文件下载功能实例代码
2016-06-29 10:16
791 查看
在工作中遇到的一个下载文件的功能,自己将其抽取出来,代码简单,希望能帮到大家,好了,话不多说,上代码!
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(); } } }
以上就是本文JavaWeb文件下载的代码,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
相关文章推荐
- java如何交换这两个变量的值方法介绍
- 从JVM分析Java的类的加载和卸载机制
- 解决Hibernate4执行save()或update()无效问题的方法
- Java中成员方法与成员变量访问权限详解
- springcloud实现注册中心Eureka
- Java关于桶排序的知识点总结
- protobuf与json转换小结
- Java+opencv3.2.0实现重映射
- SpringBoot项目中使用AOP的方法
- ehcache模糊批量移除缓存的方法
- Java Annotation详解及实例代码
- Java使用正则表达式去除小数点后面多余的0功能示例
- java防反编译最简单的技巧分享
- Java创建数组的几种方式总结
- SpringMVC+Mybatis实现的Mysql分页数据查询的示例
- struts2如何使用拦截器进行用户权限控制实例
- java基础—equals方法
- Spring学习笔记
- JavaWeb文件上传下载功能深入分析(二)
- 学习JAVA浮点数必看文章!