Servlet处理文件下载的编码问题,乱码。

        //处理文件名乱码问题// 获得请求头中的User-AgentString agent = request.getHeader("User-Agent");// 根据不同的客户端进行不同的编码String filenameEncoder = "";if (agent.contains("MSIE")) {// IE浏览器filenameEncoder = URLEncoder.encode(filename, "utf-8");filenameEncoder = filenameEncoder.replace("+", " ");} else if (agent.contains("Firefox")) {// 火狐浏览器BASE64Encoder base64Encoder = new BASE64Encoder();filenameEncoder = "=?utf-8?B?" + base64Encoder.encode(filename.getBytes("utf-8")) + "?=";} else {// 其它浏览器filenameEncoder = URLEncoder.encode(filename, "utf-8");}

转载于:https://www.cnblogs.com/bingxing/p/9343909.html

Servlet处理文件下载的编码问题,乱码。相关推荐

  1. java printwriter乱码_Java servlet 使用 PrintWriter 时的编码与乱码的示例代码

    在前面的网页中的编码与乱码系列中,曾多次提到使用 servlet 方式构建的动态响应流,不过在那里都是直接使用字节流的方式,不过,更为常见的方式是使用字符流.而在前面,又谈到了 Java 字节流与字符 ...

  2. java菱形乱码 编码_JAVA:编码与乱码问题

    一.为什么要编码? 由于人类的语言太多,因而表示这些语言的符号太多,无法用计算机的一个基本的存储单元----byte来表示,因而必须要经过拆分或一些翻译工作,才能让计算机能理解. byte一个字节即8 ...

  3. Java编码与乱码问题

    一.为什么要编码? 由于人类的语言太多,因而表示这些语言的符号太多,无法用计算机的一个基本的存储单元----byte来表示,因而必须要经过拆分或一些翻译工作,才能让计算机能理解. byte一个字节即8 ...

  4. 常见编码及乱码的处理

    常见编码及乱码的处理 常见编码及乱码的处理 前言 一.字符集与编码 1.字符集简介 2.ASCII编码 3.Latin1字符集 4.UTF-8编码 5.字符集兼容性 6.文件编码从哪看? ASCII码 ...

  5. java %u解码_Java:编码与乱码问题

    一.为什么要编码? 由于人类的语言太多,因而表示这些语言的符号太多,无法用计算机的一个基本的存储单元----byte来表示,因而必须要经过拆分或一些翻译工作,才能让计算机能理解. byte一个字节即8 ...

  6. php 使用css乱码,分享CSS字符编码引起乱码快速解决的方法

    下面小编就为大家带来一篇分享CSS字符编码引起乱码快速解决的方法.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 乱码引起的CSS失效原理: 由于一个中文是两个字符组成, ...

  7. 编码与乱码(05)---GBK与UTF-8之间的转换--转载

    原文地址:http://www.blogjava.net/pengpenglin/archive/2010/02/22/313669.html [GBK转UTF-8] 在很多论坛.网上经常有网友问&q ...

  8. 文章已转移到“字符集编码与乱码”分类下

    2019独角兽企业重金招聘Python工程师标准>>> 取消此"乱码探源"分类,之下的文章已经转移到"字符集编码与乱码(我的网站)"下. 也可 ...

  9. 汉字乱码_彻底搞懂这烦人的编码与乱码!

    ❝ 我们平时在处理文本文件或者网络请求时,时不时会遇到乱码的情况,这篇文章就带你彻底搞懂编码和乱码 ❞ 首先,我们要知道,在计算机中,一切都是用0和1来表示的.普通的txt文件.或者客户端发过来的数据 ...

最新文章

  1. Mysql列类型-数值型
  2. 徒手撸一个简单的IOC
  3. 京东裁员杀红眼了!说要给n+1,员工签字后,公司又反悔了!
  4. 推荐开发工具系列之--LinrF5(自动刷新)
  5. python ansible_Ansible升级客户机Python2.4至2.7
  6. JavaScript_process01
  7. 互联网晚报 | 11月7日 星期日 | EDG夺得《英雄联盟》S11总冠军;拼多多推出“超拼夜”系列;VMware与戴尔完成分拆...
  8. 07-mysql基本查询,阶段二,条件查询
  9. python中文件最重要的功能是什么和接收数据_Python测试题
  10. 理解 Symbol.toStringTag 用法
  11. W Zong / A Robust Open-source Algorithm to Detect Onset and Duration of QRS Complexes
  12. zabbix 监控mysql模板_Zabbix监控MYSQL模板-阿里云开发者社区
  13. 最大约数(秋季每日一题 34)
  14. 仿支付宝输入密码界面
  15. 计算机不小心办公软件,电脑表格不小心删除怎么恢复-互盾数据恢复软件
  16. Word更新所有域的代码
  17. html标签的多级列表,word如何将标题样式关联多级列表
  18. LeetCode高频题:二叉树的锯齿形(Z字形,之字形)层序遍历
  19. python oracle 工具类,python连接Oracle工具类
  20. 使用 svg-sprite-loader、svgo-loader 优化 svg symbols

热门文章

  1. 数据库管理之数据表管理(1)
  2. rcnn spp_net hcp
  3. ATL中的C++模板
  4. Xshell6突然连不上K8S所在的虚拟机
  5. 谷歌浏览器不能上网_谷歌浏览器插件下载及安装教程!
  6. 数字化转型方法论_双中台:企业数字化转型的核心战略与方法论
  7. Bootstrap简介、下载bootstrap及引入文件说明、响应式容器和满屏容器、栅格系统
  8. 【zabbix个性化监控之一】TCP连接数
  9. SQL:如何用一个sql统计出全校男生个数、女生个数以及总人数
  10. Spark下的word2vec模型训练