0

我想对可下载的文件名进行编码。我想用 ą ę ć ż ź 之类的波兰语字母设置文件名。这是我的代码:

response.setHeader("Content-disposition", "attachment; filename=" + URLEncoder.encode("ŻżŹźĄą", 'UTF-8'))

它适用于 Chrome,但 MozillaFirefox 显示不正确。

如何正确设置编码?

4

2 回答 2

0

它行不通。HTTP 标头隐含地需要 ASCII 但最高的拉丁 1 编码。没有标准以 UTF-8 对名称进行编码。如果你分解这些字母,Yolu 会更好。请参阅:如何在 HTTP 中对 Content-Disposition 标头的文件名参数进行编码?

于 2012-08-13T14:23:46.613 回答
0

这是因为 Chrome 和 IE 有问题。“%”在 Content-Disposition 参数中并不特殊,除非您使用 RFC 5987 中定义的编码。

于 2012-08-13T16:38:47.090 回答