用Response实现文件下载

这个由于自己的一个失误导致浏览器一直读取不到文件名和文件类型,后来发现是一个笔误。

"attachment;filename="+filename 少写了一个等号。。。。把这个代码贴上来,以此记录。


直接帖代码


/**
 * Response实现文件下载
 *
 */
public class FileDownload extends HttpServlet {


public void doGet(HttpServletRequest request,HttpServletResponse respose) throws ServletException,IOException{
String path=this.getServletContext().getRealPath("/download/1.jpg");
String filename=path.substring(path.lastIndexOf("\\")+1);

respose.addHeader("Content-Disposition", "attachment;filename="+filename);
respose.setHeader("Content-Type", "text/html,charset=utf-8");
InputStream in=null;
OutputStream out=null;
try{
in=new FileInputStream(path);
int len=0;
byte buffer[]=new byte[1024];
out=respose.getOutputStream();
while((len=in.read(buffer))>0){
out.write(buffer, 0, len);
}

System.out.println("path:"+path);
System.out.println("filename:"+filename);

}finally{
if(in!=null){
try{
in.close();
}catch(Exception e){
e.printStackTrace();
}
}
}

}


}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值