String sql;
sql = "insert into table1(field1) values('为什么乱码')";数据库用mysql, 在sql语句里直接写中文,写进数据库后,再读出来乱码,如何解决?
sql = "insert into table1(field1) values('为什么乱码')";数据库用mysql, 在sql语句里直接写中文,写进数据库后,再读出来乱码,如何解决?
调试欢乐多
gb = new String(iso.getBytes("GB2312"),"ISO-8859-1"); 取出来转换为gb2312
gb = new String(iso.getBytes("ISO-8859-1"),"GB2312");
mysql的default charset是latin1,改为utf-8是比较理想的办法
1.用uft-8的工具来看latin1的编码不一定是乱码,编码方式只是一种对byte的解释方法,如果String本身是用utf-8编的码然后再用latin1重新encode为latin1,那么用uft-8的工具来看,它仍然是好的
2.你用latin1来保存中文时用utf-8和latin1的查看工具都不能看到正常文字,只有用unicode的察看工具才能正常看到中文