java后台生成文件给前端下载(response输出流)
作者:互联网
1、设置 ContentType
response.setContentType("application/x-download");
2、设置文件名,并指定编码格式
fileName = URLEncoder.encode("浏览器要显示的文件名", "UTF-8"); response.setCharacterEncoding("UTF-8");
3、将文件名 addHeader
response.addHeader("Content-Disposition", "attachment;filename=" + fileName);
4、读取文件流写入 response
File file = new File(filePath); try { InputStream stream = new FileInputStream(file); ServletOutputStream out = response.getOutputStream(); byte buff[] = new byte[1024]; int length = 0; while ((length = stream.read(buff)) > 0) { out.write(buff,0,length); } stream.close(); out.close(); out.flush(); } catch (IOException e) { e.printStackTrace(); }
标签:java,stream,length,后台,new,out,response,buff 来源: https://www.cnblogs.com/huangruiwu/p/16597315.html