我可以在一个HttpServletResponse中附加多个附件吗
例如,我想在一个响应中下载一个zip文件和一个csv文件。除了将这两个文件压缩到一个zip文件中之外,还有其他方法吗?
回答:
尽管ServletResponse并不是要这样做,但我们可以通过编程方式对其进行调整,以发送多个文件,除IE以外的所有客户端浏览器似乎都可以正确处理。下面给出了一个示例代码片段。
response.setContentType("multipart/x-mixed-replace;boundary=END");ServletOutputStream out = response.getOutputStream();
out.println("--END");
for(File f:files){
FileInputStream fis = new FileInputStream(file);
BufferedInputStream fif = new BufferedInputStream(fis);
int data = 0;
out.println("--END");
while ((data = fif.read()) != -1) {
out.write(data);
}
fif.close();
out.println("--END");
out.flush();
}
out.flush();
out.println("--END--");
out.close();
在IE浏览器中将无法使用。注意:不包括尝试捕获块
以上是 我可以在一个HttpServletResponse中附加多个附件吗 的全部内容, 来源链接: utcz.com/qa/407361.html