解决火狐浏览器英文+中文组合下载文件名不全的问题

解决火狐浏览器英文+中文组合下载文件名不全的问题

Laughing
2017-09-18 / 0 评论 / 1,180 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2020年09月26日,已超过1574天没有更新,若内容或图片失效,请留言反馈。

今天在处理文件下载的时候,在IE下面没问题,但是火狐下面只显示文件名的的英文部分,丢失了中文部分以及文件扩展名。其实解决办法是很简单的,配置Content-disposition时采用下面的方法。

response.setHeader("Content-disposition","attachment;filename=\"" + fileName + "\"");

温馨提示
设置responseContent-disposition项时,filename的值要加上双引号,如果不加双引号,在Firefox下载文件时,如果文件名是英文+中文的组合,比如:YXLM英雄联盟.docx,这个文件在Firefox下载时,下载下来的文件名只有YXLM了。只有加了双引号后,文件名才和代码设置的文件名一致。因为这个双引号是在字符串里,所需需要加反斜杠\来进行转义。

0

评论 (0)

取消
  1. 头像
    雨林
    Windows 10 · Google Chrome

    下载测试看

    回复
  2. 头像
    Laughing 作者
    Windows 10 · Google Chrome
    @ Half

    年前没时间处理了

    回复