java代码如下
@GetMapping("/download-apparatus-data")
public void downloadApparatusData(HttpServletRequest request, HttpServletResponse response) throws Exception {
String filePath = "文件路径";
File file = new File(filePath);
response.setHeader(
"Content-Disposition",
String.format(
"attachment; filename=\"%s\"",
URLEncoder.encode(apparatusData.getName(), "utf-8")
)
);
String mimeType = request.getServletContext().getMimeType(file.getPath());
response.setContentType(mimeType + ";charset=UTF-8");
response.setContentLength((int) file.length());
response.setHeader("Pragma", "no-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0);
try {
InputStream myStream = new FileInputStream(file.getAbsolutePath());
IOUtils.copy(myStream, response.getOutputStream());
response.flushBuffer();
} catch (IOException e) {
e.printStackTrace();
}
}