springMVC的文件下载
/**
* 文件下载
* @return
*/
@RequestMapping("/download")
public ResponseEntity<InputStreamResource> download() throws IOException {
FileInputStream fileInputStream = new FileInputStream("/Users/leo/Desktop/Picture1.png");
// 1.解决文件名中文乱码问题
String encode = URLEncoder.encode("美女.png", "UTF-8");
// 2.文件太大溢出(内存溢出)
InputStreamResource resource = new InputStreamResource(fileInputStream, encode);
return ResponseEntity.ok()
// 内容类型 流
.contentType(MediaType.APPLICATION_OCTET_STREAM)
// 内容大小
.contentLength(fileInputStream.available())
// 内容处理方式
.header("Content-Disposition", "attachment; filename=\"" + encode + "\"")
.body(resource);
}







网友评论