处理文件流关闭问题

This commit is contained in:
wangchengjun
2022-06-15 16:29:49 +08:00
parent 56a03baf31
commit 90403f17b6
@@ -43,27 +43,26 @@ public class SplitFileController {
splitIndex = fileUrl.lastIndexOf("/"); splitIndex = fileUrl.lastIndexOf("/");
} }
String fileName = fileUrl.substring(splitIndex + 1); String fileName = fileUrl.substring(splitIndex + 1);
response.setHeader("Content-Disposition", // response.setHeader("Content-Disposition",
"attachment; filename=\""+fileName+"\""); // "attachment; filename=\""+fileName+"\"");
response.setHeader("Content-Disposition", response.setHeader("Content-Disposition",
"attachment; filename=\"" + SplitFileUtils.encodeFileName(fileName, request) + "\""); "attachment; filename=\"" + SplitFileUtils.encodeFileName(fileName, request) + "\"");
response.setContentType("application/force-download"); response.setContentType("application/force-download");
try(OutputStream os = response.getOutputStream();
/*FileInputStream fis = new FileInputStream(fileUrl);*/) {
if (CosBootUtil.doesObjectExist(fileUrl)) { if (CosBootUtil.doesObjectExist(fileUrl)) {
InputStream fis = CosBootUtil.download(fileUrl); try (OutputStream os = response.getOutputStream();
InputStream fis = CosBootUtil.download(fileUrl)) {
int len = 0; int len = 0;
while ((len = fis.read()) != -1) { while ((len = fis.read()) != -1) {
os.write(len); os.write(len);
} }
os.flush(); os.flush();
}
} catch (FileNotFoundException e) { } catch (FileNotFoundException e) {
throw new JeroBootException("文件不存在"); throw new JeroBootException("文件不存在");
} catch (IOException e) { } catch (IOException e) {
throw new JeroBootException("文件不存在"); throw new JeroBootException("文件不存在");
} }
} }
}
} }