此博客是本人从学生时代开始做笔记所用, 部分是工作所遇问题,做填坑笔记,部分闲来查阅资料,加上自己的理解所总结的学习笔记, 常忙得不可开交,若漏了资料来源,望通知~ 前路漫漫,写点东西告诉自己正在一点点进步,而不要迷失于繁忙。

乱码问题

HTML出现乱码

主要原因是html编码是gbk,而其中的中文字内容是用utf-8

备注:gbk的范围囊括中文,只是编码方式冲突

解决方法(使用utf-8编码):

<meta charset=utf-8" />

 

前提:很多情况下(如很多协议传输数据时)都使用ISO 8859-1编码

tomcat

问题: 程序需要发送http请求到服务器,请求的参数中包含了中文字符且其为UTF-8编码。使用的tomcat服务器,但服务器端后台程序中取到的参数的中文是乱码。

原因:如果没有设置URIEncoding, Tomcat默认是按ISO-8859-1进行URL解码,ISO-8859-1并未包括中文字符,这样的话中文字符肯定就不能被正确解析了

解决方法:

<Connector port="8080" maxThreads="150" minSpareThreads="25" 
maxSpareThreads="75" enableLookups="false" redirectPort="8443" 
acceptCount="100" debug="99" connectionTimeout="20000" 
disableUploadTimeout="true" URIEncoding="UTF-8"/>

 

接收请求时乱码

解决方法即将请求转为UTF-8编码

post

response.setCharcacterEncoding("utf-8")

get

String name = request.getParameter("name");
name=new String(name.getBytes("ISO-8859-1","utf-8")) 

 

posted @ 2018-12-04 11:05  炎泽  阅读(172)  评论(0编辑  收藏  举报