我正在压缩文件并将其写入输出流,如何将压缩文件大小放入响应标头
os = response.getOutputStream();
gzos = new GZIPOutputStream(os);
fin = new FileInputStream(file);
in = new BufferedInputStream(fin);
byte[] buffer = new byte[1024];
int i;
while ((i = in.read(buffer)) >= 0) {
gzos.write(buffer, 0, i);
}
gzos.flush();
答案 0 :(得分:0)
你应该看看fin.Position
答案 1 :(得分:0)
响应将被提交,也就是说,如果你正在gzip一个20MB的大文件,那么在gzip完成之前标题已经被发送到客户端,并且当gzip完成时你无法修改提交的头。
答案 2 :(得分:0)
你没有。原因:你不必。 servlet容器会为你处理它。