小编die*_*ing的帖子

如何强制浏览器下载文件?

一切正常,但只有文件很小,大约1MB,当我尝试使用更大的文件,比如20MB我的浏览器显示它,而不是强行下载,到目前为止我尝试了很多标题,现在我的代码看起来:

PrintWriter out = response.getWriter();
String fileName = request.getParameter("filename");

File f= new File(fileName);

InputStream in = new FileInputStream(f);
BufferedInputStream bin = new BufferedInputStream(in);
DataInputStream din = new DataInputStream(bin);

while(din.available() > 0){
    out.print(din.readLine());
    out.print("\n");
}

response.setContentType("application/force-download");
response.setContentLength((int)f.length());
response.setHeader("Content-Transfer-Encoding", "binary");
response.setHeader("Content-Disposition","attachment; filename=\"" + "xxx\"");//fileName);


in.close();
bin.close();
din.close();
Run Code Online (Sandbox Code Playgroud)

java servlets java-ee

54
推荐指数
2
解决办法
10万
查看次数

标签 统计

java ×1

java-ee ×1

servlets ×1