• 关于java中文乱码问题,我有话要说。


    最近这两天改两个项目的bug,都遇到了中文乱码的问题,现将问题和解决方案都汇总于此,供大家参考。

    如果最开始你把整个项目的编码和tomcat的编码都设置成一样,例如GBK或者GB2312或者UTF-8,应该前后方交互是不会出问题的,但是也会有出现像我这样中途给项目添功能,然后让中文乱码的,这就不知道什么原因导致的了,只知道怎么解决。

    问题1:从后台传入前台中文乱码。

    解决方案:在处理数据之前,在后台设置

      response.setCharacterEncoding("UTF-8"); 这里的编码可以自己稍微试一下,常见的有utf-8,ISO-8859-1,GB2312

    前台也要设置编码:在Head里面设置

    <meta http-equiv="Content-type'' content=''text/html;charset=UTF-8"> 

    问题二:从前台传入后台中文乱码

    解决方案:这个问题就比较头疼了,我现在有三种问题可以解决。

    1)设置request

    request.setCharacterEncoding("utf-8");和设置response一样一样的。

    2) 把字符转换成字符流的形式进行转码,把使用中文的字符串从前台拿到之后进行如下操作,里面的编码方式因人而异

    new String(str.getBytes("gbk"),"utf-8");

    3)使用StringUtil类进行转码

    StringUtil有相关的方法:例如toGb()等就可以解决乱码问题。

  • 相关阅读:
    Linux下 find 命令用法
    MVC3 ViewBage 输出的值 被编码
    C#枚举数值与名称的转换实例分享
    关于Js的那些面试题
    Javascript Event事件中IE与标准DOM的区别
    原生js选项卡
    js之事件冒泡和事件捕获详细介绍
    js事件的三个阶段
    js对象中关于this关键字的作用
    css的相对定位与绝对定位
  • 原文地址:https://www.cnblogs.com/Gabby/p/5460188.html
Copyright © 2020-2023  润新知