大文件下载---之内存溢出问题解决

InputStream fis = new BufferedInputStream(new FileInputStream(file));   //用BufferedInputStream读取文件
response.reset();
response.setContentType("application/x-download");
response.addHeader("Content-Disposition", "attachment;filename=" + new String(file.getName().getBytes(), "iso-8859-1"));
response.addHeader("Content-Length", "" + file.length());
OutputStream out = new BufferedOutputStream(response.getOutputStream());
response.setContentType("application/octet-stream");
byte[] buffer = new byte[1024 * 1024];
int i;
while ((i = fis.read(buffer)) != -1) {
    out.write(buffer, 0, i);
}
fis.close();
out.flush();
out.close();
原文地址:https://www.cnblogs.com/nihaorz/p/11991635.html