话不多说,直接上代码:
@RequestMapping(value = "regList")
public ResponseEntity<byte[]> export() {
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
try {
//如果下载的文件名为中文则需要这样处理
headers.setContentDispositionFormData("attachment", new String("中文文件名.txt".getBytes("gbk"),"iso-8859-1"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
//网上有些人把HttpStatus.OK改成了HttpStatus.CREATED,这样在IE下会有问题,无法下载文件。
return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file), headers, HttpStatus.OK);
}