huberygu

导航

 

前端
getNumList()
{
axios({
method: 'post',
url: 'http://192.168.1.1:12345/getNumList',
data: this.getNumListFile,
responseType: 'arraybuffer',
}).then((response) => {
let blob=new Blob([response.data],{type:"application/x-download;charset=utf-8"});
let objectUrl=URL.createObjectURL(blob);
window.location.href=objectUrl;
this.logout=true;
})
}

后端
BufferedInputStream inputFile = new BufferedInputStream(new FileInputStream(file));
BufferedOutputStream outputFile = new BufferedOutputStream(response.getOutputStream());
response.setContentType("application/x-download;charset=utf-8");
// 获取文件名

String[] split = file.getName().split("\\");
response.setHeader("Content-disposition", "attachment;filename=" + URLEncoder.encode(split[0], "UTF-8"));
byte[] buffer = new byte[8192];
int count = 0;
while ((count = inputFile.read(buffer, 0, 8192)) != -1) {
outputFile.write(buffer, 0, count);
}
outputFile.flush();
file = null;
inputFile.close();
outputFile.close();

posted on 2020-12-04 22:14  huberygu  阅读(84)  评论(0)    收藏  举报