java解决中文乱码的几种写法
工作中总会遇到中文乱码问题,以导出文件,文件名称是中文的话,下载下来的文件名称会乱码问题,总结了几种解决文件名乱码的写法,仅供参考。
首先定义一个汉语字符串
String zhName = "错误码模板";
一、java.net.URLEncoder.encode(zhName, "UTF-8");
这种写法 在谷歌浏览器 、 IE浏览器上,表示很好用。直接解决掉了乱码问题。
但是在火狐浏览器上,导出的文件名没有解码,如下图。
二、new String(zhName.getBytes("UTF-8"),"iso-8859-1");
第二种写法是实例化String,修改编码格式。
经试验,谷歌浏览器,火狐浏览器,都好用。但是IE浏览器又乱码了。
此时有些凌乱了,如何同时兼容三个浏览器呢。接下来上大招。
三、
同时兼容chrome Firefox IE 三个浏览器写法
String zhName = "错误码模板";
String header = request.getHeader("User-Agent").toUpperCase();
if (header.contains("MSIE") || header.contains("TRIDENT") || header.contains("EDGE")) {
zhName = URLEncoder.encode(zhName, "utf-8");
zhName = zhName.replace("+", "%20"); //IE下载文件名空格变+号问题
} else {
zhName = new String(zhName.getBytes(), "ISO8859-1");
}
response.setHeader("Content-Disposition", "attachment;filename="+zhName+ ".txt");
以上,哈哈完美兼容三个浏览器。问题解决。
转载于:https://www.cnblogs.com/shiyuetaozi/p/7521623.html
java解决中文乱码的几种写法相关推荐
- java button中文乱码_java解决中文乱码的几种写法
工作中总会遇到中文乱码问题,以导出文件,文件名称是中文的话,下载下来的文件名称会乱码问题,总结了几种解决文件名乱码的写法,仅供参考. 首先定义一个汉语字符串 String zhName = " ...
- cocos2dx java 乱码_[cocos2d-x] --- 完美解决中文乱码
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 一 介绍 最近由于各种各样的原因,好长时间没有学习cocos2d-x了.突然有种害怕的感觉,这样下去,以前学的关于cocos2d-x的一点皮毛会彻底忘记的 ...
- java zip解压 中文_java解压ZIP 解决中文乱码 (GBK和UTF-8)
java解压ZIP 解决中文乱码 (GBK和UTF-8) 工具使用 : zip4j GitHub : zip4j 版本 : 2.2.8 Maven : net.lingala.zip4j zip4j ...
- java 过滤器 中文_java中Filter过滤器解决中文乱码办法
java中Filter过滤器解决中文乱码办法 发布时间:2020-04-07 10:19:09 来源:亿速云 阅读:16 作者:小新 这篇文章主要为大家详细介绍了java中Filter过滤器解决中文乱 ...
- java txt中文乱码,JAVA读取TXT文件 可解决中文乱码问题
import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.I ...
- java web 中有效解决中文乱码问题-pageEncoding与charset区别, response和request的setCharacterEncoding 区别
java web 中有效解决中文乱码问题-pageEncoding与charset区别, response和request的setCharacterEncoding 区别 参考文章: (1)java ...
- java解压多目录Zip文件(解决中文乱码问题)--转载
原文地址:http://zhangyongbo.iteye.com/blog/1749439 import java.io.BufferedOutputStream; import java.io.F ...
- Java 按行读写文件(解决中文乱码)
import java.io.*;public class EmployeeTest{EmployeeTest(){}// 按行读取文件public void readFile01(){try {Fi ...
- JAVA之NIO按行读写大文件,完美解决中文乱码问题
JAVA之NIO按行读写大文件,完美解决中文乱码问题 参考文章: (1)JAVA之NIO按行读写大文件,完美解决中文乱码问题 (2)https://www.cnblogs.com/jpfss/p/89 ...
- java读取.properties文件及解决中文乱码问题
java读取.properties文件及解决中文乱码问题 参考文章: (1)java读取.properties文件及解决中文乱码问题 (2)https://www.cnblogs.com/helloq ...
最新文章
- 2021年中国工业互联网安全大赛核能行业赛道writeup之日志分析
- 【freemaker】之FreeMakerUtil工具类
- iOS之CALayer的CAEmitterLayer实现“红包雨”效果
- CENTOS7 Python3.7安装pip模块以及pip使用
- Unity SRP自定义渲染管线 -- 3.Lights
- 官网下载mysql实例数据库
- oracle开放视图,Oracle视图
- matlab程序 地震 相干噪声_地震台站台基噪声功率谱概率密度函数Matlab实现
- 《机器学习系统设计:Python语言实现》一2.2 IPython控制台
- 本地windows下新建kafka生产消费数据
- python基础之psutil模块和发邮件(smtplib和yagmail)
- Android AR场景拍照技术实现(有关键源代码)
- redis过期策略有哪些?内存淘汰机制有哪些?
- Carsim 2019 安装后打不开 未响应 acquiring licence information
- 互联网突破和 SD-WAN
- 人工智能时代,如何让机器狗听懂你说的话?
- arcmap坐标点生成线和面
- JavaScript 中字符串截取 (+实现)
- 撕不撕?如何撕?跟谁撕?权力游戏致胜手册
- 财务审计工作内容有哪些