您的位置:首页 > 编程语言 > Java开发

javaWeb 实现文件下载的功能

2016-03-02 17:14 761 查看
本文实现文件下载的功能,已经经过项目实践哈

前端只需要向后台controller传递一个要想下载的文件名或文件名的全路径,此处代码是传的文件名

后台controller代码:

@RequestMapping(value = "/downloadQrcode",method = RequestMethod.GET)
@ResponseBody
public void download(HttpServletRequest request,HttpServletResponse response){
String Qfile = request.getParameter("Qfile");
try{
QRCodeUtil.fileDownLoad(request,response, Qfile);
}catch (IOException e) {
e.printStackTrace();
Log.error(TAG, e.toString());
}
}


public static void fileDownLoad(HttpServletRequest request, HttpServletResponse response, String srcname) throws IOException{
OutputStream os = null;
try {
os = new BufferedOutputStream(response.getOutputStream());
response.reset();
response.setHeader("Content-Disposition", "attachment; filename="+srcname);
response.setContentType("application/octet-stream; charset=utf-8");
String filename = FileConstants.getLocalDir() +"/"+ srcname;//FileConstants.getLocalDir()为服务器上文件的全路径
if(!f.exists()){
//文件不存在
return;
}
os.write(FileUtils.readFileToByteArray(f));
os.flush();
}
finally {
if (os != null) {
os.close();
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: