我一直在尝试下载带有中文文件名的附件,但不知何故他们的编码在下载时发生了变化,并且在有中文字符的地方保存了一些乱码文件名。
技术:Java 服务器:Apache Tomcat
这是我已经尝试过的
response.setHeader("Content-Disposition", "attachment; filename=\"7_6_4_AM__2017_JS_003_??????_B1_108\"");
输出(下载的附件名称):“7_6_4_AM__2017_JS_003_W_äð”
我还尝试在引用后将 * 附加到文件名指令:
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition
response.setHeader("Content-Disposition", "attachment; filename*=\"7_6_4_AM__2017_JS_003_??????_B1_108\"");
输出(下载的附件名称):“706.txt”
还,
在我的研究中,我发现 HTTP 标头消息不能携带 ISO-8859-1 字符集之外的字符。
https://tools.ietf.org/html/rfc5987
提前致谢。