当前位置: 代码迷 >> Java Web开发 >> 如何解决乱码
  详细解决方案

如何解决乱码

热度:9231   发布时间:2013-02-25 21:17:23.0
怎么解决乱码啊
我在上传的时候,传入数据库中不是乱码,可是从数据库中下载下来确实乱码了,怎么解决啊,我用得的是GBK啊

------解决方案--------------------------------------------------------
在输出页面加上
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
------解决方案--------------------------------------------------------
如果是这样的话,应该是页面编码格式问题,右击jsp-properties 编码格式换成gbk
------解决方案--------------------------------------------------------
乱码的话需要检查几个地方的编码,一般来说,只要保持 操作系统,中间件,页面,数据库 四个部分的编码集一致,就不会出现乱码。 偶尔也有特殊情况,需要做一下转码或者设置过滤器。
------解决方案--------------------------------------------------------
我这也用的gbk,通过ajax返回json数据到页面,
中文是通过下面代码转换实现
String str;
new String(str.getBytes("iso8859-1"),"GBK");
------解决方案--------------------------------------------------------
乱码了 你要确定是哪一步乱码了,别乱转,乱转怎么也转不对的。
首先数据存的是不是乱码,如果是乱码 请修改数据库或者程序编码保持一致。
其次如果数据库不是乱码,你debug下下看看java程序读出来是不是乱码,如果乱了说明你程序需要调整编码。
第三后台程序也就是java代码到页面是否是乱码,如果页面乱码 java程序里面不是乱码,那么 你页面编码get出来的时候有问题,同时页面输出的时候加上编码。

找个每个环节对症下药,就能解决了。
个人博客http://www.happyalaric.com
------解决方案--------------------------------------------------------
把前后台的编码都统一写成UTF-8 过滤器的编码也是UTF-8一般就不会出现中文乱码问题。
------解决方案--------------------------------------------------------
几乎出现乱码就是编码不统一的问题,因此,只要你能够找到出现问题的地方,然后看看编码是否统一,进行修改就可以了,包括数据库在内,编码也要统一
------解决方案--------------------------------------------------------
上传时,出现乱码的缘故是因为在客户端向服务器发送请求时为:request.setCharacterEncoding("gbk");
服务器响应时则为response.setCharacterEncoding("gbk");因为你用的是gbk的,所以应保持字符编码的一致,同时设置charset="gbk",这样就可以了
  相关解决方案