当前位置: 首页 > 图文教程 > 网络编程 > JSP > JSP 点击链接后下载文件(相当于右键另存)功能

JSP
如何处理网站的头尾和导航的公用文件
JSP输出HTML时产生的大量空格和换行的去除方法
JSP 中文字符处理代码
java对XML文件的解析、节点的增加、删除操作总结
传智播客java web 过滤器
搭建EXTJS和STRUTS2框架(ext和struts2简单实例)
JSP 获取真实IP地址的代码
jsp下页面跳转的几种方法小结
asp.net getRemoteAddr()与 getRemoteHost()的区别

JSP 点击链接后下载文件(相当于右键另存)功能


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 51 ::
收藏到网摘: n/a

JSP 点击链接后下载文件(相当于右键另存)功能实现代码。
复制代码 代码如下:

/**
* 实现文件另存功能
*
* @param text
* 文件内容
* @param fileName
* 文件名称
* @return
*/
protected String renderFile(String text, String fileName)
throws IOException
{
response.addHeader("Content-Disposition", "attachment; filename="
+ fileName);
response.setContentType("application/octet-stream");
response.setCharacterEncoding("GB2312");
response.getWriter().write(text);
response.flushBuffer();
response.getWriter().close();
return null;
}

下载的action:
复制代码 代码如下:

/** *//**
* 提供下载的方法
* @return
*/
public String down()
{
String dir = getFullPath() + "/upload/file/";
try
{
if (!FileUtils.exists(dir))
{
new File(dir).mkdirs();
}
Random r = new Random(System.currentTimeMillis());
Integer randomInt = r.nextInt();
this.renderFile("test content:" + randomInt,randomInt + ".txt");
}
catch (IOException e)
{
e.printStackTrace();
this.renderText(e.getMessage());
}
return null;
}

页面链接调用:
复制代码 代码如下:

<a href="${ctx}/va/va!down.do" >下载</a>