首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

关于MYSQL取出数据乱码的有关问题

2013-12-07 
关于MYSQL取出数据乱码的问题本帖最后由 u011687117 于 2013-12-03 11:46:11 编辑我之前发过一个贴子,关于

关于MYSQL取出数据乱码的问题
本帖最后由 u011687117 于 2013-12-03 11:46:11 编辑 我之前发过一个贴子,关于MYSQL乱码的问题:
http://bbs.csdn.net/topics/390655701

查了许多资料之后,找到了根本原因:
http://bugs.mysql.com/bug.php?id=64071
根据上面资料中所说,因为有5个字符在java的Cp1252字符集中是没有定义的。但在latin1和iso8859-1中有定义,所以转换之后就出现了乱码。
但是无法解决。比如:


String str = "消息";
byte b[] = str.getBytes();
String new_str = new String(b,"Cp1252");
String s = new String(new_str.getBytes("Cp1252"));

//正常的“消息”getBytes&tohex之后是:
ffffffe4,ffffffbf,ffffffa1,ffffffe6,ffffff81,ffffffaf
//但是经过上面的操作之后,getBytes&tohex则变成了:
ffffffe4,ffffffbf,ffffffa1,ffffffe6,   3f   ,ffffffaf


求解决方案。。 JAVA MYSQL 乱码 Cp1252 latin1
[解决办法]
数据库用什么编码,你解码就用什么码解了。这个不能硬来的。
[解决办法]
mysql安装文件中的my.ini修改编码格式
[解决办法]
引用:
Quote: 引用:

mysql安装文件中的my.ini修改编码格式

数据库只能查,不能修改

你确定数据库的编码就是latin1?

热点排行