日期:2014-05-18  浏览次数:20677 次

读数据库全是乱码!
我是MYSQL数据库,我用MySQL   Front可以看到里面的数据,可用ASP,PHP,JSP读出来汉字就是乱码!!
可别人用JSP读出来就不是乱码!
我问他是什么原因,他不说,他只说MYSQL的字段是16位的,ASP处理的是8位的字节。所以就成了乱码。
请问各位是怎么处理的?
给出示例的(ASP,PHP,JSP,ASP.NET都行)得全分!

------解决方案--------------------
getBytes转化一下不行吗.
------解决方案--------------------
查询之前一起执行:
set names gb2312
或者其他合适的编码
------解决方案--------------------
有可能你插入的时候就是乱码!
首先建库的时候设置下编码最好是UTF-8
然后建表的时候也设置下编码格式UTF-8
在连接数据库的时候设置编码格式
Connection con=DriverManager.getConnection( "jdbc:mysql://localhost:3306/dbName?useUnicode=true&characterEncoding=UTF-8 ", "root ", " ");

在添加过滤器,还有server.xml设置 <Connector URIEncoder= "UTF-8 "


------解决方案--------------------
安装完成后mysql默认字符编码是latin,要手工改成UTF-8,然后建表,在页面中也统一使用UTF-8编码。
------解决方案--------------------
貌似是unicode的问题啊,
可以查下unicode字符集转换的相关资料
getbytes( "gb2312 ")
------解决方案--------------------
xxx.getParameter( "xxx ").trim().getbytes( "gb2312 ")

goodluck

------解决方案--------------------
一劳永逸的办法就是统一使用UTF-8编码

已有库就不能改了吗?……呵呵,仔细想想,还是能做到的。改参数,导出、修改、导入……
------解决方案--------------------
统一用utf-8编码~~~
------解决方案--------------------
因为编码问题产生的乱码,这种问题经常会出现,所谓的String.getbytes( " ")方法虽然能够解决,但是很累,且没有治本。

软件绝大部分技术都是西方的智力成果,默认是人家的编码方式,UTF-8就是为了解决在任何语言情况下都能正常使用的问题。
------解决方案--------------------

这样试试:

String str = new String(request.getParameter( "XXXXX ").getBytes( "ISO-8859-1 "), "gb2312 ");
------解决方案--------------------
把数据库和页面的字符编码设成一样的!!
在写入的时候转换一下编码方式
public String tochStr(String str){
if(str == null){
str= " ";
}
else{
try{
str = (new String(str.getBytes( "ISO-8859-1 "), "GBK ")).trim();
}
catch(Exception e){
e.printStackTrace(System.err);
}
}
return str;
}
------解决方案--------------------
<%@ page contentType= "text/html;charset=utf-8 " pageEncoding= "utf-8 " %>
<meta http-equiv= "Content-Type " content= "text/html; charset=utf-8 ">
要三處都定義utf-8!

------解决方案--------------------
String a=(String)request.getParameter( "str1 ");
byte[] b=valuelist.getBytes( "ISO-8859-1 ");
valuelist=new String(b);
还有要看下你content的charset是gb2312
------解决方案--------------------
加过滤器!
------解决方案--------------------
最大的可能就是出在你数据库的编码方式和你在ASP,PHP,JSP中读取数据时的编码方式不一样,还有就是你的浏览器设置的语言类型。
------解决方案--------------------
数据库只要是支持中文的,那都没有问题啊,关键是看你存入的时候是什么编码,如果你存的时候就是乱码,那数据库里当然就是乱码了~~