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

JSP
JSP的login程序代码
编写线程安全的JSP程序
通过JSP的预编译消除性能瓶颈
JSP学习心得
使用JSP开发WebMail系统
在jsp中用bean和servlet联合实现用户注册、登录
在Linux环境下安装JSP
jsp页面调用applet实现人民币的大小写转换
JSP+XML构架网站的实例
用缓冲技术提高JSP应用的性能和稳定性
配置Web应用环境实现JSP留言簿
用JSP创建可重用的图形背景
轻松使用JSP生成饼图
Jdbc连Sybase数据库的几种方法
用定制标签库和配置文件实现对JSP页面元素的访问控制
Jsp结合XML+XSLT将输出转换为Html格式
用JSP操作Cookie
安装resin+mysql+IIS+JDK的总结
JSP的运行内幕
指南:想成为一个JSP网站程序员吗?

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 85 ::
收藏到网摘: 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>