默認把文件名放上去, 中文會亂碼, 文件名種有空格, 就會被截斷
public void download(HttpServletResponse response){// 文件名先進行url編碼, 避免亂碼問題// 把+用%20進行替換fileName = URLEncoder.encode(fileName, "UTF-8").replace("+", "%20");response.setContentType("application/octet-stream");// 注意是 filename*=utf-8''response.setHeader("Content-Disposition", "attachment;filename*=utf-8''" + fileName + "." + fileRecord.getFileFormat());}
不能直接把空格替換成%20, 因為%會被url編碼轉成%25, 雖然可以再手動替換回來, 但太麻煩了
就先url編碼, 再替換+號即可
參考:?https://blog.csdn.net/minshiwang/article/details/105393649