从品牌网站建设到网络营销策划,从策略到执行的一站式服务
Java实现点击下载文件的时候,弹出“另存为”对话框,选择保存位置,然后下载,代码如下:
创新互联建站是一家专业提供重庆企业网站建设,专注与做网站、成都做网站、HTML5建站、小程序制作等业务。10年已为重庆众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。
public void downLoad(String filePath, HttpServletResponse response)
throws Exception {
System.out.println("filePath"+filePath);
File f = new File(filePath);
if (!f.exists()) {
response.sendError(404, "File not found!");
return;
}
BufferedInputStream br = new BufferedInputStream(new FileInputStream(f));
byte[] buf = new byte[1024];
int len = 0;
response.reset();
response.setContentType("application/x-msdownload");
response.setHeader("Content-Disposition", "attachment; filename=" + f.getName());
OutputStream out = response.getOutputStream();
while ((len = br.read(buf)) 0) out.write(buf, 0, len);
br.close();
out.close();
}
response.setContentType("application/x-download");//设置为下载application/x-download
String filedownload = path;//即将下载的文件的相对路径
String filedisplay = fileName;//下载文件时显示的文件保存名称
String filenamedisplay = URLEncoder.encode(filedisplay,"utf-8");
response.addHeader("Content-Disposition","attachment;filename=" + filenamedisplay);
然后把文件流给response的outputStream
你现在这么直接执行可能是在页面没有返回的super.writeJson(json);信息你就认为不执行了,你先进行调试一下 ,看看到哪步卡住了。我怀疑很可能是super.writeJson(json);这个用的哪里不对可能没返回给页面信息。你可以在这个上一步进行一下打印随意信息看看能不能到这块。确定一下是哪步停住了,然后针对的再找问题。
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图