当前位置: 代码迷 >> Java Web开发 >> 还是编码有关问题,从数据库读到可以显示,插入却出错
  详细解决方案

还是编码有关问题,从数据库读到可以显示,插入却出错

热度:2864   发布时间:2013-02-25 21:22:12.0
还是编码问题,从数据库读到可以显示,插入却出错
java.sql.SQLException: Incorrect string value: '\xE4\xBC\xA0\xE5\xAA?...' for column 'words' at row 1

我的数据库表的编码为:utf-8 ,其中把words列改成了GBK编码的,页面全部是utf-8的编码
我先在数据库中插入了数据,取出来的数据显示是正常的,我修改提交的话就出来上面的问题,那就转码吧,我是这样做的:
Chinese.toChinese(request.getParameter("words"));
Java code
 public  static String  toChinese(String strvalue) {           try {               if (strvalue == null) {                   return "";               } else {                   strvalue = new String(strvalue.getBytes("utf-8"), "GBK");                   return strvalue;               }           } catch (Exception e) {               return "";           }    }

比方说原先是:浙江#帖子
页面上改成:浙江#帖子#得分
提交,这样虽然插入成功了,但是却出现了乱码:??????#??????#??????

想了好久还是不知道是为什么,希望指点下

------解决方案--------------------------------------------------------
utf-8的范围小于gbk,怎么可以吧小的转给大的,可以让gbk转utf-8
------解决方案--------------------------------------------------------
探讨
引用:

把work 改为utf-8 统一用utf-8

已经全部改成UTF-8了,但update后就变乱码了。。郁闷
  相关解决方案