easyexcel文件名中文乱码
时间: 2023-08-24 14:08:58 浏览: 142
easyexcel-3.0.5-API文档-中文版.zip
5星 · 资源好评率100%
在EasyExcel中,如果要下载的文件名包含中文,需要进行编码处理,以防止乱码。可以使用URLEncoder.encode方法对文件名进行编码,然后将编码后的文件名添加到Content-Disposition的header中。例如,在后端代码中可以这样处理文件名:
String fileName = URLEncoder.encode("数据写出", "UTF-8");
response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");
这样就可以确保文件名中的中文不会出现乱码了。\[1\]
另外,还可以设置response的字符编码为UTF-8,以确保正确处理中文字符。可以使用response.setCharacterEncoding("utf-8")方法进行设置。\[1\]
如果还是出现乱码问题,可以尝试使用不同的Content-Type设置。例如,可以尝试使用response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8")来设置Content-Type。\[2\]或者使用response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")来设置Content-Type,然后在Content-Disposition的header中添加编码后的文件名。\[3\]
另外,还可以尝试在response中添加"Access-Control-Expose-Headers"的header,以确保前端可以获取到Content-Disposition的值。可以使用response.setHeader("Access-Control-Expose-Headers", "Content-Disposition")来添加该header。\[3\]
综上所述,可以通过对文件名进行编码处理,并设置正确的Content-Type和字符编码,以解决easyexcel文件名中文乱码的问题。
#### 引用[.reference_title]
- *1* [使用EasyExcel下载,文件名乱码问题处理](https://blog.csdn.net/w574951402/article/details/121181824)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* *3* [EasyExcel导出时文件名乱码](https://blog.csdn.net/weixin_42405132/article/details/129180361)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文