SQL Sever中文乱码的分析解决

转载 2013年12月06日 11:06:11


JSP页面中,我们通过以下的方法解决中文乱码问题,首先,在htmlhead标签内加入以下meta信息:

              <meta http-equiv=Content-Type content="text/html; charset=gbk">

       其作用是告诉客户端浏览器,这个HTMLGBK编码文件。

       JSP中加入以下的一句编译指令,定义JSP程序使用字符集为GBK

              <%@ page contentType="text/html;charset=gbk" %>

       这样,保证了JSP服务器引擎将会把JSP的输出以GBK编码的形式输出。

但是在表单提交或URL传参数值时依然是按照Web容器在其内部默认的字符编码格式ISO 8859-1来进行处理的。同时,几乎所有的浏览器在传递参数时都是默认以UTF-8的方式来传递参数的。所以,虽然我们的Java源文件在出入口的地方指定了正确的编码方式,但其在容器内部运行时还是以ISO 8859-1来处理的,这样导致在提交的表单中若有中文字符,根据上文分析,在存入数据库是使用的是ISO 8859-1 MS SQL Sever 2000数据库默认使用的是GBK编码,这样出现的结果就是存到数据库中的数据因编码不同而出现乱码现象。

在这种情况下,我们的解决办法就是通过编码转换,使存放到数据库的数据编码格式与数据库的内部编码格式统一,即为GBK编码格式。

即将写入数据库的中文转换为从ISO 8859-1编码格式,实现方法如下:

       String str=new String(dbstr.getBytes(“ISO8859-1”,”GBK”);

读出数据库的中文将其从GBK编码格式转换为ISO 8859-1编码格式,实现方法如下:

       String str=new String(dbstr.getBytes(”GBK” ,“ISO8859-1”);

相关文章推荐

解决txt导入sql server数据库乱码问题

解决txt导入数据库乱码问题 原则:上传的文本的编码跟上传服务器的编码要一致 一、查数据库服务器编码SQLserver: SELECT  COLLATIONPROPERTY('Chinese_...

SqlServer数据库中文乱码问题解决

问题:创建新数据库,存入中文显示乱码??? 原因分析:SQL版的乱码问题还是出现在SQL SERVER的安装设置上。默认安装时系统默认的排序规则是拉丁文的排序规则,但一般人在安装时没有考虑到这一点,...

SQL Sever中文乱码的分析解决

在JSP页面中,我们通过以下的方法解决中文乱码问题,首先,在html的head标签内加入以下meta信息:                 ...

解决Sybase客户端执行SQL遇到中文乱码问题

在用Sybase客户端时候经常会遇到中文乱码问题,因此在这里记录一下,如何去设置。首先打开Sybase Central ,如图所示:然后打开SQL Advantage,点击Server    然后选择...
  • cuiran
  • cuiran
  • 2011-06-10 14:45
  • 5285

Code:Blocks 中文乱码问题原因分析和解决方法!

Code:Blocks 中文乱码问题原因分析和解决方法!  这里以Code::Blocks 10.5版本为蓝本进行说明。 首先,请在Code::Blocks里面输入标准的一个C程序...

Android中文乱码的分析与解决

在手机与PC之间进行socket或HTTP通讯时,常常会出现中文乱码问题,其主要原因在于手机端字符编码默认为UTF-8,而服务器PC端默认为gbk或gb2312。     手机到PC的信息编码传...

分享 返回分享首页» 分享 new String(getBytes(ISO-8859-1),GBK)解决中文乱码问题分析

用了好几种编码 全是乱码,request.setCharacterEncoding("UTF-8");尝试了好几种 String newdefrayItem = new String(request...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)