浏览器下载文件功能
浏览器下载文件功能
使用SpringBoot开发一个小功能,可以在其他系统中使用,后台设定一个网址并存储相关文件,浏览器点击网址即可下载文件。
@GetMapping("/downloadFile")
public void downloadFile(HttpServletResponse response) {
String filePath = "文件路径";
String fileName = "文件名";
File file = new File(filePath);
if(file.exists()) {
response.setContentType("application/force-download");
response.addHeader("Content-Disposition", "attachment;fileName=" + fileName);
byte[] buffer = new byte[1024];
FileInputStream fis = null;
OutputStream outputStream = null;
int len = 0;
try {
fis = new FileInputStream(filePath);
outputStream = response.getOutputStream();
while((len = fis.read(buffer)) != -1) {
outputStream.write(buffer, 0, len);
}
outputStream.flush();
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if(outputStream != null) {
outputStream.close();
}
if(fis != null) {
fis.close();
}
} catch (IOException e) {
throw new RuntimeException(e);
}
}
}
}