java本地文件下载功能
2017-07-19 23:29
537 查看
文件下载部分:以二进制流数据下载,也是最常见的一种
@RequestMapping(value="/downloadqrcodes",method={RequestMethod.GET,RequestMethod.POST})
public ResponseEntity<byte[]> download(String filename,HttpServletRequest req,HttpServletResponse res) throws Exception {
System.out.println(req.getCharacterEncoding());
System.out.println(filename);
ApplicationContext ctx = GetApplication.getApp();
QrcodepersonMapper qrcodepersonMapper = (QrcodepersonMapper) ctx.getBean("qrcodepersonMapper");
Qrcodeperson qrcodeperson = qrcodepersonMapper.selectByPrimaryKey(Integer.parseInt(filename));
String filen = qrcodeperson.getUrlname();
//下载文件路径
//filename="何家劲.jpg";
String path = req.getServletContext().getRealPath("/file/");
File file = new File(path+File.separator+filen);
System.out.println("文件路径为:"+path+File.separator+filen);
HttpHeaders headers = new HttpHeaders();
//下载显示的文件名,解决中文名称乱码的问题
String downloadFileName = new String(filen.getBytes("UTF-8"), "ISO-8859-1"); //为了下载下来的名字和文件的名字相同
System.out.println(downloadFileName);
//通知浏览器以attachment(下载方式)打开图片
headers.set(filen, null);
headers.setContentDispositionFormData("attachment", downloadFileName);
//application/octet-stream:二进制流数据(最常见的文件下载)
headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
//201 HttpStatus.CREATED
return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file), headers,HttpStatus.CREATED);
}
@RequestMapping(value="/downloadqrcodes",method={RequestMethod.GET,RequestMethod.POST})
public ResponseEntity<byte[]> download(String filename,HttpServletRequest req,HttpServletResponse res) throws Exception {
System.out.println(req.getCharacterEncoding());
System.out.println(filename);
ApplicationContext ctx = GetApplication.getApp();
QrcodepersonMapper qrcodepersonMapper = (QrcodepersonMapper) ctx.getBean("qrcodepersonMapper");
Qrcodeperson qrcodeperson = qrcodepersonMapper.selectByPrimaryKey(Integer.parseInt(filename));
String filen = qrcodeperson.getUrlname();
//下载文件路径
//filename="何家劲.jpg";
String path = req.getServletContext().getRealPath("/file/");
File file = new File(path+File.separator+filen);
System.out.println("文件路径为:"+path+File.separator+filen);
HttpHeaders headers = new HttpHeaders();
//下载显示的文件名,解决中文名称乱码的问题
String downloadFileName = new String(filen.getBytes("UTF-8"), "ISO-8859-1"); //为了下载下来的名字和文件的名字相同
System.out.println(downloadFileName);
//通知浏览器以attachment(下载方式)打开图片
headers.set(filen, null);
headers.setContentDispositionFormData("attachment", downloadFileName);
//application/octet-stream:二进制流数据(最常见的文件下载)
headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
//201 HttpStatus.CREATED
return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file), headers,HttpStatus.CREATED);
}
相关文章推荐
- JAVA应用XFire框架来实现WebServie的大文件传输功能之一(下载)
- php带密码功能并下载远程文件保存本地指定目录 修改加强版
- java resteasy restful webservice教程(六):实现文件下载功能实例文章来源:爱上123 原文地址:http://www.ishang123.com/jishubowen/
- java实现文件上传,文件下载功能 源码
- 用java 代码下载Samba服务器上的文件到本地目录以及上传本地文件到Samba服务器
- JavaWeb中struts2实现文件上传下载功能实例解析
- JAVA实现FTP服务器文件的上传,下载,删除功能
- JAVA开发常用功能二--文件下载
- 下载网络文件 与 java得到本地目录文件对象
- java下载远程http地址的图片文件到本地-自动处理图片是否经过服务器gzip压缩的问题
- java实现文件下载功能,自动弹出保存窗口
- Java实现文件下载功能
- java 下载文件功能
- JAVA下载TXT文件到本地,这一个方法完全能够解决
- java下载远程文件到本地
- java—servlet实现文件下载功能
- java 通过 URL 类和 URLConnection类 以及输入流实现文件下载功能
- java 下载文件到本地,输出样式 header('Content-Type:application/xxx')
- java 通过 URL 类和 URLConnection类 以及输入流实现文件下载功能
- Java从web服务器下载文件到本地