jsp中实现点击文件名称完成下载

1.文件名称添加点击事件

<a href="javascript:void(0);" id="wjm"  onclick="wjxz();" style="cursor:pointer;text-decoration:underline;color:blue;" title="文件名" >
  <span class="detailSpan">文件名</span>
</a> <!-- 这里加了样式:1.cursor:pointer;(当把鼠标放上后,显示为小手),2.text-decoration:underline;(文件名下有下划线),3.color:blue;(文件名颜色为蓝色)-->

2.点击文件名触发的函数

 获取文件的绝对路径和文件名称,并作为参数传递到下载的jsp中。
/**
* 文件下载
*/
function wjxz(){
var path = $("#wjlj").val();
var wjm = $("#wjm").attr('title');
var url="wjxz.jsp?path="+path+"&wjm="+wjm;
window.open(url);
}

3.复制该路径下的文件,完成下载

 jsp中引入java代码
<%
out.clear();
out = pageContext.pushBody();
response.setContentType("application/x-msdownload");
String wjm = RequestUtils.getParam(request, "wjm");
String path = RequestUtils.getParam(request, "path");
response.addHeader("Content-Disposition","attachment;fileName="+CommFunction.toUtf8String(wjm));
OutputStream os = response.getOutputStream();
FileInputStream fis = new FileInputStream(path);
try{
byte[] b = new byte[1024];
int m = 0;
while ( (m = fis.read(b)) > 0 ){
os.write(b, 0, m); //写文件
}
fis.close();
os.flush();
os.close();
}
catch(Exception e){
fis.close();
os.flush();
os.close();
} %>
 
上一篇:牛客网数据库SQL实战解析(1-10题)


下一篇:使用awk和sed获取文件奇偶数行的方法总结