mysql> show variables like '%char%';
+--------------------------+----------------------------------------------------| Variable_name | Value
+--------------------------+----------------------------------------------------| character_set_client | gb2312
|
| character_set_connection | gb2312
|
| character_set_database | gb2312
|
| character_set_filesystem | binary
|
| character_set_results | gb2312
|
| character_set_server | gb2312
|
| character_set_system | utf8
|
| character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.0\share\chars
ets\ |
+--------------------------+----------------------------------------------------8 rows in set (0.31 sec)首先将mysql数据库上的字符集设置成上面那样,其次你把数据写进mysql的时候不要转成iso-8859-1再写进去,而应该是转成gb2312写进去才对,读出来也一样。
String name =new String(name.getBytes("ISO-8859-1"),"GB2312");
+--------------------------+----------------------------------------------------| Variable_name | Value
+--------------------------+----------------------------------------------------| character_set_client | gb2312
|
| character_set_connection | gb2312
|
| character_set_database | gb2312
|
| character_set_filesystem | binary
|
| character_set_results | gb2312
|
| character_set_server | gb2312
|
| character_set_system | utf8
|
| character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.0\share\chars
ets\ |
+--------------------------+----------------------------------------------------8 rows in set (0.31 sec)首先将mysql数据库上的字符集设置成上面那样,其次你把数据写进mysql的时候不要转成iso-8859-1再写进去,而应该是转成gb2312写进去才对,读出来也一样。
String name =new String(name.getBytes("ISO-8859-1"),"GB2312");
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货