乱码了怎么解决(解决中文乱码问题)
乱码了怎么解决(解决中文乱码问题)
解决中文乱码问题1. 字符集
1) 字符(Character)是各种文字和符号的总称,包括各个国家文字、标点符号、图形符号、数字等。字符集(Character set)是多个字符的集合。
2) 任何数据在计算机内部实际上都是以二进制的形式保存的,所以我们看得见的字符本质上都是以二进制的形式保存的。而字符集实际上就是看得见的字符和二进制数之间的一张对应表。
2. 编码与解码
1) 编码:将字符转换为二进制数
'中' → E4B8AD → 1110 0100-1011 1000-1010 1101
2) 解码:将二进制数转换为字符
1110 0100-1011 1000-1010 1101 → E4B8AD → '中'
3) 乱码:编码与解码使用的字符集不一致就会产生乱码。
如下图:使用 utf-8 编码,使用GBK 解码
所以,解决乱码问题的根本方法就是统一编码和解码的字符集。
3. 在Web应用中统一字符集
1) 请求参数中含有中文
· 请求由浏览器发送给服务器
· 由浏览器编码
· 浏览器使用HTML页面指定的字符集编码,只需要将HTML页面的字符集指定为UTF-8即可
· 由服务器解码
· 默认字符集是IOS-8859-1
· 解决方案
· 对于POST请求:post请求在Servlet中解码,默认的字符集是ISO-8859-1,不支持中文,所以我们需要修改Servlet的字符集为UTF-8。使用request.setCharacterEncoding("UTF-8");设置request对象使用UTF-8字符集对请求体中的内容进行解码。但需要注意的是,这个操作一定要在调用getParameter()方法之前进行。
· 对于GET请求:GET请求是在URL地址栏中传递请求参数的,它会被Tomcat服务器自动解码,而Tomcat服务器默认的字符集也是ISO-8859-1,
所以我们需要修改Tomcat服务器的字符集为UTF-8。由于请求参数是包含在请求行内的,无法通过request对象进行设置,所以需要在Server.xml文件中修改Connector标签,添加URIEncoding="utf-8"属性。
在eclipse中的Tomcat镜像中修改即可生效。但如果将来删除当前Tomcat镜像,重新关联Tomcat,则会使设置失效,所以在Tomcat配置文件中最好也进行配置。
2) 服务器响应中含有中文
· 响应由服务器发送给浏览器
· 由服务器编码
· 默认使用ISO-8859-1进行编码
· 由浏览器解码
· 默认使用GBK进行解码
· 解决方案
· 方法1:设置响应头
response.setHeader("Content-Type","text/html;charset=utf-8");
· 方法2:设置响应的内容类型
response.setContentType("text/html;charset=utf-8");
· 通过这种方式可以在响应头中告诉浏览器响应体的编码方式是UTF-8;同时服务器也会采用该字符集进行编码
但需要注意的是,两种方法一定要在response.getWriter()之前进行。
,
-
- 跟女朋友聊得话题(和女朋友聊天话题增进感情)
-
2023-11-08 10:38:43
-
- 斗破苍穹萧炎现在实力(斗破苍穹实力排名)
-
2023-11-08 10:36:28
-
- 冬天养花用什么肥料(如何养花的技巧和施肥 )
-
2023-11-08 10:34:13
-
- leaves是什么意思-(leaves是什么意思)
-
2023-11-08 10:31:58
-
- 情侣如何相处才能长久(女人和男人相处的秘诀)
-
2023-11-08 10:29:43
-
- 财经类的考研学校排名(财经类考研院校排名)
-
2023-11-08 10:27:28
-
- 阳台适合养的月季花品种(阳台月季有哪些优秀品种)
-
2023-11-08 10:25:13
-
- 六月雪的花语和寓意是什么「必看:六月雪的花语小知识」
-
2023-11-08 10:22:58
-
- 冻干粉多久用一次最好 冻干粉一般多久有效果(冻干粉一天用几次效果好)
-
2023-11-08 10:20:43
-
- doll的中文意思是什么意思啊(hole是什么意思)
-
2023-11-08 10:18:28
-
- 企鹅的翅膀叫鳍吗(企鹅到底会不会飞)
-
2023-11-08 04:21:10
-
- 本溪为什么是五线城市(辽宁省本溪是几线城市)
-
2023-11-08 04:18:55
-
- 乌克兰国土面积多少平方公里人口是多少万(乌克兰面积多少平方公里)
-
2023-11-08 04:16:40
-
- 高考穿衣有什么讲究(高考适合穿什么样的衣服)
-
2023-11-08 04:14:25
-
- 狮子座与什么星座最配做夫妻(狮子座和什么星座最配做夫妻)
-
2023-11-08 04:12:10
-
- 汽车原地打火开空调三个小时会怎么样(车子原地开空调3个小时可以吗)
-
2023-11-08 04:09:54
-
- 个税扣除怎么算的(个人所得税怎么计算)
-
2023-11-08 04:07:39
-
- 腐乳主要是什么菌发酵(腐乳是什么菌发酵)
-
2023-11-08 04:05:24
-
- 上海的高校的排名(上海有什么大学排名一览)
-
2023-11-08 04:03:09
-
- 朱元璋的传奇一生简介(明太祖朱元璋的一生经历介绍)
-
2023-11-08 04:00:54