Java输出流文件下载

 1 public void download(HttpServletResponse response){
 2         //读取一个classpath路径下的一个预下载文件
 3         org.springframework.core.io.Resource res = new ClassPathResource(TEMPLATE_FILE_PATH);
 4         InputStream ins = null;
 5         OutputStream out = null;
 6         try {
 7             //设置response header
 8             response.setCharacterEncoding("UTF-8");
 9             response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
10             response.setHeader("Content-Disposition", "attachment;filename=template.xlsx");
11             ins = new BufferedInputStream(res.getInputStream());
12             out = new BufferedOutputStream(response.getOutputStream());
13             //缓冲下载
14             byte[] buffer = new byte[BUFFER_SIZE];
15             int n = 0;
16             while((n = ins.read(buffer)) != -1){
17                 out.write(buffer, 0, n);
18             }
19         } catch (IOException e) {
20             e.printStackTrace();
21         }finally{
22             //关闭流
23             IOUtils.closeQuietly(ins);
24             IOUtils.closeQuietly(out);
25         }
26     }

做个记录~

转载于:https://www.cnblogs.com/thierry/p/4807395.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值