Java 生成 byte[] 数据流下载链接
要生成一个下载链接,需要将 byte[] 数据流转换为文件并将其保存在服务器上,然后将文件的 URL 地址返回给用户作为下载链接。
以下是一个示例代码:
byte[] data = // byte[] 数据流
String fileName = 'file.txt'; // 文件名
String fileType = 'text/plain'; // 文件类型
String downloadUrl = null; // 下载链接
try {
// 将 byte[] 数据流转换为文件并保存在服务器上
String filePath = 'path/to/save/file/' + fileName;
FileOutputStream fos = new FileOutputStream(filePath);
fos.write(data);
fos.close();
// 生成下载链接
String baseUrl = 'http://example.com/downloads/';
downloadUrl = baseUrl + fileName;
} catch (IOException e) {
e.printStackTrace();
}
// 返回下载链接
if (downloadUrl != null) {
response.setContentType(fileType);
response.setHeader('Content-disposition', 'attachment;filename=' + fileName);
response.getWriter().write(downloadUrl);
}
在上面的代码中,我们首先将 byte[] 数据流转换为文件并保存在服务器上。然后,我们使用文件名和基本 URL 地址生成下载链接。最后,我们将下载链接返回给用户,并设置响应的内容类型和 Content-disposition 头,以便浏览器知道如何处理这个链接。
原文地址: https://www.cveoy.top/t/topic/ojxy 著作权归作者所有。请勿转载和采集!