@RequestMapping("/createReporNewWord")
@ResponseBody
public ResponseEntity<byte[]> createReporNewWord(RfgcMaintenanceEvaluationReport model, HttpSession session){
//创建附件(自己的业务)
//File excelFile = getRfgcMaintenanceevaluationreportService().getExportWord(model);
// 获取桌面路径
FileSystemView fsv = FileSystemView.getFileSystemView();
File path=fsv.getHomeDirectory();
File excelFile = File.createTempFile(System.currentTimeMillis(), ".txt", path);
if(excelFile == null){
return null;
}
ResponseEntity<byte[]> result = null;
try {
HttpHeaders headers = new HttpHeaders();
String agent = (String)getRequest().getHeader("USER-AGENT");
if(agent != null && agent.toLowerCase().indexOf("firefox") > 0){
headers.setContentDispositionFormData("fileName", "=?UTF-8?B?" + (new String(Base64.encodeBase64(excelFile.getName().getBytes("UTF-8")))) + "?=");
}else{
headers.setContentDispositionFormData("fileName", URLEncoder.encode( excelFile.getName(),"UTF-8"));
}
headers.setContentType(MediaType.MULTIPART_FORM_DATA);
result = new ResponseEntity<byte[]>(FileUtil.readAsByteArray(excelFile), headers, HttpStatus.OK);
} catch (IOException e) {
e.printStackTrace();
}finally {
//删除文件
File finalExcelFile = excelFile;
new Thread(() -> {
try {
Thread.sleep(30000);
if (finalExcelFile.exists()){
finalExcelFile.delete();
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}).start();
}
return result;
}
java附件,文档下载
于 2023-01-11 16:03:25 首次发布