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

求tomcat+sqlserver+jdbc+utf-8乱码完美解决方案
网上查了很多资料,均行不通
希望有经历的朋友进来帮帮忙

采用utf-8编码
遇到中文就变乱码

有些资料上说mssql不完全支持unicode存储
不知如何是好了。

谢过

------解决方案--------------------
nvarcahr 表示支持unicode呀 晕
------解决方案--------------------
不会出现乱码啊
我就一直用 SQLSERVER 数据库
在容易出现乱码的地方重新编码一次就OK了

比如

<%@page pageEncoding= "UTF-8 "%>

<%!String trans(String chi){
String result=null;
byte temp[];
try{
temp=chi.getBytes( "iso-8859-1 ");
result=new String(temp, "UTF-8 ");
}
catch(java.io.UnsupportedEncodingException e)
{
System.out.println(e.toString());
}
return result;
}%>

在汉字前面用 trans(你的内容) 一下就OK了
我一般都这样处理乱码的,当然,有些第三方的包,只支持gb2312,那就全部改成gb2312,因为有一些包我在使用过程中,UTF-8不行

至于数据库我没有管,都用默认的,这样不会有乱码啊!
------解决方案--------------------
你是不是在页面里没有做转换呀!或者是你做了多次转换,比如你用了过滤器,又加了一次手工转换,都是会出现乱码的。
另外,在做项目时有时在本机测试的是正常编码,但是传到服务器上就会变成乱码。各种情况都会有的。