乱码有时候是让我们最头疼,但是根据多年的经验:
保持编码的一致,就肯定不会乱码。
怎么样才能一致了?现在很多b/s结构的程序都是分层的。所以保持一致,还是可以控制的。
页面、逻辑层、数据库,还有server。
比如:
整个页面采用UTF-8编码,可是在中文作为get参数后出现乱码问题。
从网上搜索了一下,得到如下解决方案。
在后台
String str=request.getParameter("para");
因为URL采用ISO-8859-1编码,所以得把它转换成与页面相同的编码方式。
str=new String (str.getBytes("iso-8859-1"),"utf-8");
如此得到正确的中文字符
如果还是乱码,还有一层,就是server层了?tomcat的server.xml中,
<Connector port="8080" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding ="GBK"/>
那么应该改成“utf-8”.
本文介绍了如何解决网页中出现的乱码问题,重点讲解了在不同层级如页面、逻辑层、数据库及服务器层面如何保持编码一致性,特别是针对GET请求参数在UTF-8环境下出现乱码的情况提供了具体的解决方案。
4562

被折叠的 条评论
为什么被折叠?



