愷风(Wei)的专栏

使用工具、了解工具、创造工具……

Java for Web学习笔记(十):Servlet(8)下发文件

给出一个文件的链接,执行一个静态的文件,这不过是HTML的脚本书写方式。那么如果我们在内存中生成文件内容,存放在byte[]中,并以指定的文件名字下发给用户,应该如何处理?

response.setHeader("Content-Disposition","attachment; filename=" + fileName);
response.setContentType("application/octet-stream");
ServletOutputStream stream = response.getOutputStream();
stream.write(fileContent); //fileContent是具体内容 byte[]

Content-Disposition将强制浏览器询问用户是否保存文件,而非在浏览器中直接打开。

返回的HTTP 200 OK例子:

这种内存方式不适用于内容很大的文件,若如此,则应利用文件,一边从文件读取,以便flush()到PrintWriter中。


相关链接: 我的Professional Java for Web Applications相关文章

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/flowingflying/article/details/49948985
个人分类: JAVA
上一篇Java for Web学习笔记(九):Servlet(7)上传文件
下一篇Java for Web学习笔记(十一):JSP(1)何为JSP
想对作者说点什么? 我来说一句

Java JDK 8学习笔记(完整清晰带目录)

2018年02月08日 92.34MB 下载

没有更多推荐了,返回首页

关闭
关闭