写了一个JSP页面要存储和读取longtext类型的数据,数据在存储前和读取后都转码成了ISO-8859-1,但显示在页面上还是乱码,其他的varchar类型的字段显示正常,没有出现乱码,这个是为什么呢,怎么解决呢?

解决方案 »

  1.   

    show variables like '%char%';重新设置字符集
    set names gbk;
      

  2.   

    一定是字符编码转化出了问题。
    show variables like %char%;
      

  3.   

    先贴一下你的字符集设置以供分析。http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/12/4174186.aspx
    MySQL 中文显示乱码
      

  4.   

    我在测试了一下 我使用jsp页面通过jdbc连接mysql数据库的
    发现  如果是在命令行中插入中文字段信息  在命令行和JSP页面读取都显示正常
    但如果在  页面中通过表单提交插入中文信息  则会在命令行和JSP页面均显示乱码
    当前联接系统参数+--------------------------+----------------------------------------------------
    -----+
    | Variable_name            | Value
         |
    +--------------------------+----------------------------------------------------
    -----+
    | character_set_client     | gbk
         |
    | character_set_connection | gbk
         |
    | character_set_database   | utf8
         |
    | character_set_filesystem | binary
         |
    | character_set_results    | gbk
         |
    | character_set_server     | latin1
         |
    | character_set_system     | utf8
         |
    | character_sets_dir       | C:\Program Files\MySQL\MySQL Server 5.0\share\charsets\ |
    +--------------------------+----------------------------------------------------
    命令行执行show create table boke的结果--------------+
    | Table | Create Table              |
    +-------+-----------------------------------------------------------------------
    --------------------------------------------------------------------------------
    --------------------------------------------------------------------------------
    --------------------------------------------------------------------------------
    --------------+
    | boke  | CREATE TABLE `boke` (
      `id` int(11) NOT NULL auto_increment,
      `title` varchar(200) collate utf8_bin NOT NULL,
      `content` longtext collate utf8_bin,
      `owner` varchar(20) collate utf8_bin NOT NULL,
      `time` varchar(40) collate utf8_bin NOT NULL,
      PRIMARY KEY  (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin |
    +-------+-----------------------------------------------------------------------
    所有的JSP页面均采用的GBK编码
    并且有将中文转码为ISO-8859-1String title=request.getParameter("title");
    String mytitle=new String(title.getBytes("ISO-8859-1"));
    但还是不能解决乱码  求解释