JSP下载服务器文件的方法
本文实例讲述了JSP下载服务器文件的方法。分享给大家供大家参考,具体如下:
<%@pageimport="java.io.FileInputStream"%>
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@pagelanguage="java"contentType="text/html;charset=UTF-8"%>
<%@pageimport="com.ecc.emp.core.Context"%>
<%@pageimport="java.io.File"%>
<%@includefile="http://www.xxxx.com/head.jsp"%>
<%
booleanloadFlag=false;
ServletOutputStreamou=null;
FileInputStreamfis=null;
try{
Contextcontext=(Context)request.getAttribute("context");
StringaccountFilePath=(String)context.getDataValue("accountFilePath");
//StringaccountFilePath="E:/ComeBack/Acc_BOS_CM/WebContent/upload/product/1336873410414custormerStatement.txt";
//StringaccountFileName=(String)context.getDataValue("accountFileName");
StringdisplayFileName=(String)context.getDataValue("displayFileName");
//StringdisplayFileName="custormerStatement.txt";
StringfullPath=accountFilePath;
response.reset();
response.setContentType("charset=UTF-8");
response.setContentType("text/HTML");
//response.setContentType("application/vnd.ms-excel");
Stringfilename=newString(displayFileName.getBytes("gb2312"),"ISO8859-1");
response.setHeader("Content-Disposition","attachment;filename="+filename);
//解决HTTPS不能下载的问题
response.setHeader("Cache-Control","public");
ou=response.getOutputStream();
Filefile=newFile(fullPath);
fis=newFileInputStream(file);
try{
if(fis!=null){
intfilelen=fis.available();
bytea[]=newbyte[filelen];
fis.read(a);
ou.write(a);
ou.flush();
}
loadFlag=true;
}catch(Exceptione){
System.out.println("Excelisnotexist!");
}
out=pageContext.pushBody();
}catch(Exceptione){
e.printStackTrace();
}finally{
try{
fis.close();
ou.close();
ou=null;
response.flushBuffer();
}catch(Exceptione){
//TODO自动生成catch块
e.printStackTrace();
}
}
%>
希望本文所述对大家JSP程序设计有所帮助。
热门推荐
10 五一公司放假祝福语简短
11 追星女孩的祝福语简短
12 给长辈端午祝福语 简短
13 生日祝福语有诗意简短
14 团圆日祝福语简短
15 中秋商务祝福语简短最新
16 温暖文艺简短祝福语短句
17 男孩上学祝福语简短的
18 入住酒店文案祝福语简短