java中流文件下载,打包返回给前端
时间: 2023-08-04 15:20:57 浏览: 123
java 使用流下载文件
5星 · 资源好评率100%
在Java中实现流文件下载,可以使用HttpServletResponse对象将文件打包并返回给前端。以下是一个简单的示例代码:
```java
@RequestMapping("/download")
public void downloadFile(HttpServletResponse response) {
try {
// 设置要下载的文件路径和文件名
String filePath = "/path/to/file";
String fileName = "example.pdf";
// 读取要下载的文件流
InputStream in = new FileInputStream(filePath);
// 设置响应头,告诉浏览器要下载文件
response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
// 创建输出流,将文件流写入到响应中
OutputStream out = response.getOutputStream();
byte[] buffer = new byte[1024];
int len;
while ((len = in.read(buffer)) > 0) {
out.write(buffer, 0, len);
}
in.close();
out.flush();
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
```
在上面的代码中,我们首先设置要下载的文件路径和文件名,然后读取文件流,并设置响应头,告诉浏览器要下载文件。接着,创建输出流,将文件流写入到响应中并关闭流。最后,使用flush()方法强制将缓冲区的内容输出到响应中。
阅读全文