标签:java web
在网页上,如果我们的超链接的地址对应的是一个jpg文件,txt文件等,点击链接时,浏览器默认的是打开这些文件而不是下载,那么如何才能实现默认下载呢。
可通过自己写一个download.jsp来实现。
<span style="font-size:18px;"><%@ page contentType="text/html; charset=UTF-8"%> <%@ page import="java.net.*"%> <% //得到文件名字和路径 String filename = request.getParameter("filename"); String filepath = request.getParameter("filepath"); String displayfilename = URLEncoder.encode(filename,"UTF-8"); try { response.setContentType("application/x-download"); response.setHeader("Content-Disposition","attachment;filename=\"" + displayfilename + "\""); RequestDispatcher dis = application.getRequestDispatcher(filepath + filename); if (dis != null) { dis.forward(request,response); } response.flushBuffer(); } catch (Exception e) { System.out.println("下载取消:" + filepath + filename); } out.clear(); out = pageContext.pushBody(); %></span>当我们要链接图片(或其他浏览器默认打开的格式,这里以图片为例)时,把对应的文件名和地址传入download.jsp的filename和filepath参数里,具体写法如下
<a class="blue-line-a" href=" /PackTool/download.jsp?filename=WinGUI.exe&filepath=http://127.0.0.1:8080/shareFolder/other/WinGUI.exe">/other/WinGUI.exe</a>
通过这样方式,我们就能实现文件的默认下载了,而不是浏览器的默认打开。
标签:java web
原文地址:http://blog.csdn.net/u011768325/article/details/46364503