IE 11下载文件的时候发现乱码.

网上查了下资料,了解了一下,主要是user-agent变了,不再是MSIE,面是rv:11.0这样,所以只要服务端判断出是IE 11,处理跟MSIE一样。

GO:

func setDownloadFileName(w http.ResponseWriter, fileName, agent string) {
    if strings.Contains(agent, "MSIE") {
        fileName = url.QueryEscape(fileName)
        fileName = strings.Replace(fileName, "+", "%20", -1)
    }
    if strings.Contains(agent, "rv:") && strings.Contains(agent, "Gecko") {
        fileName = url.QueryEscape(fileName)
        fileName = strings.Replace(fileName, "+", "%20", -1)
    }
    w.Header().Set("Content-Disposition", "attachment;filename=\""+fileName+"\"")
}

PHP:

$ua = isset ( $_SERVER ["HTTP_USER_AGENT"] ) ? $_SERVER ["HTTP_USER_AGENT"] : '';
<span style="white-space:pre">     </span>
if (preg_match ( "/MSIE/", $ua )) {
<span style="white-space:pre"> </span>$file_name = rawurlencode ( $file_name );
<span style="white-space:pre"> </span>header ( 'Content-Disposition: attachment; filename="' . $file_name . '"' );
} else if (preg_match ( "/Firefox/", $ua )) {
<span style="white-space:pre"> </span>header ( 'Content-Disposition: attachment; filename*="utf8\'\'' . $file_name . '"' );
} elseif (stripos ( $ua, 'rv:' ) > 0 && stripos ( $ua, 'Gecko' ) > 0) {
<span style="white-space:pre"> </span>$file_name = rawurlencode ( $file_name );
<span style="white-space:pre"> </span>header ( 'Content-Disposition: attachment; filename="' . $file_name . '"' );
} else {
<span style="white-space:pre"> </span>header ( 'Content-Disposition: attachment; filename="' . $file_name . '"' );
}

IE 11下载文件中文乱码解决(go/php)相关推荐

  1. 解决ff浏览器下载文件中文乱码问题

    之前做的Word导出简历功能,前端点完要直接下载,遇到了ff浏览器下载时中文乱码的问题 function exportWord(id) {window.location.href = "/w ...

  2. Web前端——VScode打开html文件中文乱码解决办法

    VScode打开html文件中文乱码解决办法 1.打开VScode后,依次点击 文件 >> 首选项 >> 设置 2.打开设置后,依次点击 文本编辑器 >> 文件(或 ...

  3. Python 爬虫数据写入csv文件中文乱码解决以及天眼查爬虫数据写入csv

    python爬虫数据写入csv文件中文乱码,用'utf-8'在pycharm中打开文件没有问题,但是用excel打开却出现了问题,以下为解决方法. (最近在练习爬虫,这个博文是对自己学习的记录和分享, ...

  4. Pandas导出CSV文件中文乱码解决方法

    问题描述: 使用to_csv方法导出CSV文件,文件出现中文乱码 解决方法: 在使用to_csv时在参数中加入参数encoding='utf_8_sig' 关于原理,请参考以下文章: utf-8和ut ...

  5. Django下载文件中文乱码 FileResponse 浏览器正确识别文件名和文件大小的简单方法

    起因 工作需要维护一个工单系统,下载文件时如果文件名有中文会导致乱码,并且下载时不显示文件的完整大小,没有进度条 修改 原先接口是这样写的 # view入口 class DownFile(BaseVi ...

  6. plsql导入txt文本数据是乱码_PL/sql导入sql文件中文乱码解决办法

    从别处接过来的pl/SQL导出文件XX.sql文件,用pl/sql工具中的import功能导入到本地库后,发现表的comment注释中文乱码,可通过以下办法解决,特记录如下: 1)进入pl/sql安装 ...

  7. Visual Studio Code 打开程序文件中文乱码解决方法

    文章原始地址: http://feotech.com/?p=76 \ 使用Visual Studio Code打开程序文件后对应的中文乱码,造成这种现象的原因是文件的编码方式不同. 可以通过调整打开文 ...

  8. Firefox下载文件中文乱码

    某系统有下载文件的功能,且文件名为中文,在Chrome浏览器中下载文件正常,而通过Firefox下载时文件的中文名却变成了"%E..."这样的"乱码",如下图, ...

  9. Firefox下载文件中文乱码问题

    今天百度了一下这个问题 -- 但是却发现都是写给开发者解决单一界面的问题. 无奈之下只能自己寻求出路. -- 在Firefox的附加组件中搜索"下载文件编码". 在附加组件界面单击 ...

  10. excel2019打开csv文件中文乱码解决方法

    CSV通常都是纯文本文件,使用分隔符号分割数据,通常可以用EXCEL正常打开,但是有时会出现用EXCEL打开中文变成乱码的问题.原因有两种,第一种就是文件本身就损坏,例外一种就是文件编码不对. 对于文 ...

最新文章

  1. jQuery UI 之 LigerUI 快速入门
  2. Rancher 推出 k3OS,业界首个 Kubernetes 操作系统
  3. Javascript MVC架构之旅
  4. Leetcode 25.K个一组翻转链表
  5. tomcat 部署脚本
  6. html 中怎样显示enum,JavaScript如何枚举?
  7. codeforces Gargari and Permutations(DAG+BFS)
  8. android监控方法耗时开源库,【开源完整项目】 AndroidGodEye 监控Android数据指标
  9. leetcode_day02
  10. 中国队新主帅朱广沪印象
  11. Vue 移动端跳到手机拨打电话界面的几种方法
  12. 摄像头NV21格式转RGB的JAVA代码,测试正确
  13. Web存储(Web Storage)介绍
  14. simulink入门
  15. 考研政治---马克思主义基本原理概论---绪论
  16. 新手自媒体推广引流,你能运营好吗?
  17. 项目风险常见清单列表库--再也不愁不能提前预知风险了
  18. 伪科学、骗科学、错误科学
  19. 2017年香港家庭用品展览会会刊(参展商名录)
  20. ios如何设置系统定位服务器,ios怎么开定位服务器

热门文章

  1. 怎么办,linux的常用命令就是记不住?于是每天推一些linux指令实践总结 -1
  2. mysql 修改隔离级别_设置mysql隔离级别
  3. python跳转下一页_我怎么能跳转到下一页呢
  4. 解决create-react-app 集成ts 报error :because it would overwrite input file. TS5055 问题
  5. 曙光服务器硬盘架,曙光服务器硬盘阵列
  6. 10分钟教会你,如何用模拟量调试电机
  7. 自步学习(Self-paced Learning)
  8. word中无法输入中文
  9. 微信付款到个人银行卡php,微信企业付款到银行卡(下)
  10. 【Qt】Qt6系列教程汇总