/**
* 下载文件时,针对不同浏览器,进行附件名的编码
* @param filename 下载文件名
* @param agent 客户端浏览器(通过request.getHeader("user-agent")获得)
* @return 编码后的下载附件名
* @throws IOException
*/
public String encodeDownloadFilename(String filename, String agent) throws IOException{
if(agent.contains("Firefox")){ // 火狐浏览器
filename = "=?UTF-8?B?"+new BASE64Encoder().encode(filename.getBytes("utf-8"))+"?=";
}else{ // IE及其他浏览器
filename = URLEncoder.encode(filename,"utf-8");
}
return filename;
}

处理下载文件时中文乱码相关推荐

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

    解决浏览器下载文件时中文文件名乱码的问题 很多时候我们需要在后台为前端提供文件下载的功能,但是当文件名中有中文时我们不能直接将文件名返回,需要对中文的文件名进行处理后再返回. 一.文件下载contro ...

  2. 文件下载图片或者视频及解决保存文件时中文乱码问题

    文件下载需求: 页面显示超链接 点击超链接后弹出下载提示框 完成图片文件下载 分析: 超链接指向的资源如果能够被浏览器解析,则在浏览器中展示,如果不能解析,则弹出下载提示框.不满足需求(所以要在a标签 ...

  3. Firefox下载文件时中文名乱码问题

    为了形象化,先看几张不同浏览器下下载文件时的效果图: 1:Firefox 36.0.1 很明显在Firefox下出现了乱码,出现乱码一般是字符集的问题,这是怎么回事呢?为什么其他的浏览器都没有问题呢? ...

  4. 火狐浏览器下载文件时文件名乱码问题的解决

    火狐浏览器在微信网页版或其他网站中下载文件时,存在文件名乱码的问题,搜索了很多解决办法,写的都比较复杂,不适合我这种不懂代码的人.后来发现火狐浏览器附加组件addons上可以搜到解决此问题的组件,就是 ...

  5. python存成csv文件时中文乱码_Python在向CSV文件写中文时乱码的处理办法

    前言 python2最大的坑在于中文编码问题,遇到中文报错首先加u,再各种encode.decode. 当list.tuple.dict里面有中文时,打印出来的是Unicode编码,这个是无解的. 对 ...

  6. Linux火狐浏览器下载文件时文件名乱码

    火狐下载时文件名会乱码,其他浏览器如360.奇安信.扣扣都是正常的! 本文转自https://blog.csdn.net/tengqingyong/article/details/79943971?u ...

  7. linux中js文件有乱码,解决node.js读取文件时中文乱码问题

    node.js不能很好地支持中文字符,在读取文件的时候,会出现对中文内容读取的乱码问题(linux系统下默认utf-8编码,一般不会出现该问题,但windows和部分虚拟机由于文件存储格式不同,可能会 ...

  8. ie浏览器打开aspx文件乱码_ie浏览器下载文件时文件名乱码

    做一个文件下载功能时,用ie浏览器下载时文件名乱码,火狐和谷歌正常,修改后ie显示正常,修改方法如下: @RequestMapping(value = "fileDownload" ...

  9. Java笔记-解决读取文件时中文乱码问题(InputStreamReader设置编码)

    Java一般读取文件时使用如下代码: InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(&q ...

最新文章

  1. 还在为快捷键烦恼吗?IntelliJ IDEA 快捷键大全 Mac 版
  2. Jmeter(二十二)_jenkins配置gitlab插件与ant插件
  3. 如果__name__ =='__main__':在Python中怎么办?
  4. MySql数据库索引原理
  5. java parseint(12.0),如何实现一个parseInt
  6. java蓝桥杯dfs_第七届 蓝桥杯决赛 Java B组 打靶 解题报告(DFS,回溯,全排列)-Go语言中文社区...
  7. python小爬虫—获取学校教务处成绩
  8. js sdk demo java_微信JS-SDK DEMO页面和示例代码
  9. DSP28335加密及解密
  10. 国家测绘局制定的测绘与地理信息行业标准统计 (20110706)
  11. 管理小故事100例3
  12. 微信小程序 自定义标题栏
  13. 活着就是要做有意义的事,做有意义的事就是好好活着
  14. iOS通讯录复制的手机号码字符串多了奇怪的unicode码\u0000202d-\u0000202c
  15. Android BottomSheetDialog使用,实现网易云歌单底部弹窗
  16. 小米Note标配版 双网通刷原生安卓7.0教程(详细)
  17. RTOS系列文章(6):Cortex-M3/4之SP,MSP,PSP,Thread模式、Handler模式、内核态、用户态
  18. 服务器配置(建站助手),使用MSFTP服务器FTP无法连接解决方法
  19. JAVA实时运算_实时计算知多少?
  20. 那杯社会责任的咖啡千滋百味

热门文章

  1. SanDisk闪迪借助新型固态硬盘提升云计算性能和密度
  2. vijos1196|吃糖果游戏|博弈论
  3. 浅悉软考网络工程师考试出题风格变化
  4. android 开源项目列表【持续整理中。。。】
  5. RFID开发利器 proxmark3
  6. linux下硬盘测速工具hdparm
  7. sendmail for linux
  8. GraphQL —— 标量类型
  9. 问题:npm WARN ajv-keywords@3.2.0 requires a peer of ajv@^6.0.0 but none is installed.
  10. [填坑]SerialPort的“端口被关闭”