日期:2014-05-20  浏览次数:20670 次

乱码问题,请教
做了个Swing界面的程序,注意,不是web

数据库是MySQL,表编码设置为UTF-8

从界面的jtextfield中读取中文,插入数据库乱码。

不清楚界面的文字要怎么转化。 试过 new String(str.getBytes(), "ISO-8859-1"); 倒是插入中文了,但是有的字还是不行,比如插入“你好”,好好的,要是其他文字,可能就不行,报错。

求真相啊

------解决方案--------------------
查看一下你数据库的编码是不是和你的程序的编码是一样的,要用gbk都用gbk要用别的就都用别的
------解决方案--------------------
iso-8859-1他的字符集不够大,有些汉字没有,所以就出现乱码了,建议是gbk。当然你的mysql的编码也要设置为gbk编码,这样统一比较好
------解决方案--------------------
new String(str.getBytes(), "UTF-8");

你可以试试
------解决方案--------------------
new String(str.getBytes("ISO-8859-1"), "gbk");
可以试下
------解决方案--------------------
数据库UTF-8,就要插入UTF-8类型的数据。。。
------解决方案--------------------
直接把系统默认编码改成UTF-8吧,不用转来转去了。
------解决方案--------------------
ISO-8859-1是英文的,LZ你要确定是在jtextfield读到程序中是乱码还是数据库的编码不是中文的原因
------解决方案--------------------
最好是用utf-8,编程环境要设成utf-8的
使用show variables like'character%';
就知道到底是不是数据库的编码了,