通过java代码实现下载功能,代码如下:(输入流和输出流实现)
public String download() {
response.setContentType("application/x-download");
String filedownload = 文件路径(绝对路径);
String filedisplay = 文件名称;
filedisplay = URLEncoder.encode(filedisplay,"UTF-8");(如果文件名称加密,使用此代码具有解密功能)
response.addHeader("Content-Disposition","attachment;filename=" + filedisplay);
OutputStream outp = null;
FileInputStream in = null;
try{
outp = response.getOutputStream();
in = new FileInputStream(filedownload);
byte[] b = new byte[1024];
int i = 0;
while((i = in.read(b)) > 0) {
outp.write(b, 0, i);
}
outp.flush();
} catch(Exception e){
System.out.println("Error!");
e.printStackTrace();
}finally{
if(in != null)
{
try {
in.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
in = null;
}
if(outp != null)
{
try {
outp.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
outp = null;
}
}
return null; }
还可以通过a链接的方式实现下载功能:
<a href="<%=basePath %>文件的相对路径?downloadfile=true&可传递参数">下载文件</a>