java 的 servlet 是可以做下载的
需要使用 response.setHeader("content-Disposition", "attachment;filename='filename' ");
'filename'是填写需要下载的文件名称
//打开文件,说明一下web站点下载文件的原理
//1.获取到要下载文件的全部路径
String path=this.getServletContext().getRealPath("image/1.gif");
//2.创建一个文件输入流
FileInputStream fis=new FileInputStream(path);
//做一个缓冲字节数组
byte buff[] =new byte[1024];
int len=0; //len表示每一次读取了多少个字节
OutputStream os=response.getOutputStream();
//每秒输出多少字节
while((len=fis.read(buff))>0) {
os.write(buff, 0, len);
}
os.close();
fis.close();
这里需要注意一下,response.getWriter()和 response.getOutputStream()这两个方法是冲突的
详解请看这里:getOutputStream 和 getWriter 在 servlet 中的区别
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于