/**
* 干扰排查报告下载
*
* @param orderType 1为集团工单,2为省端工单
* @param workorderid 工单号
* @param request
* @param response
* @throws IOException
*/
@RequestMapping(value = "/getInterferenceReportDownload", method = {RequestMethod.POST, RequestMethod.GET})
public boolean getInterferenceReportDownload(@RequestParam(value = "orderType", required = true) int orderType,
@RequestParam(value = "workorderid", required = true) String workorderid,
HttpServletRequest request, HttpServletResponse response) throws IOException {
InterferonWorkOrderDTO interferenceReportDownload = interferonWorkOrderService.getInterferenceReportDownload(orderType, workorderid);
//名称
String fileName = interferenceReportDownload.getReportname().trim();
//文件
byte[] reportfile = interferenceReportDownload.getReportfile();
String userAgent = request.getHeader("User-Agent");//获取浏览器名(IE/Chome/firefox)
// 针对IE或者以IE为内核的浏览器:
if (userAgent.contains("MSIE") || userAgent.contains("Trident")) {
fileName = java.net.URLEncoder.encode(fileName, "UTF-8");
} else {
// 非IE浏览器的处理:
fileName = new String(fileName.getBytes("UTF-8"), "ISO-8859-1");
}
OutputStream bos = null;
try {
String encodeName = fileName;
response.setHeader("Content-disposition", "attachment;filename=" + encodeName);
response.setContentType("application/force-download");
response.setCharacterEncoding("UTF-8");
bos = new BufferedOutputStream(response.getOutputStream());
bos.write(reportfile);
bos.flush();
} finally {
if (bos != null) {
bos.close();
}
return true;
}
}
数据库二进制文件浏览器下载
最新推荐文章于 2024-09-05 23:24:19 发布