CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web 开发

中文字符如何处理,才能正确地存入数据库,而不是乱码?

楼主lovemoreh(爱比恨多)2006-03-14 15:43:30 在 Java / Web 开发 提问

想做个BBS,结果,帖子的中文内容存入数据库时,成了乱码,应该如何正确处理呢?  
   
  我的程序片段如下:  
   
  String   sql="insert   into   dbo.bbs_qst(   userid,   dt,   cont)   values(\'pgm\',   \'2006-03-14   16:12\',   \'"   +   ssubject   +"\')";    
  Integer   i_rt=stmt.executeUpdate(sql);    
   
  其中:变量ssubject   为帖子主题内容,中文。     存入数据库后成了乱码。  
   
  问题点数:100、回复次数:10Top

1 楼qinqinxiatiao(WWW·坑你·NET (我的鸡鸡呢))回复于 2006-03-14 15:46:59 得分 35

写一个filter,进行转码   设置成UTF-8。  
   
  数据库字符集设置成   uft8Top

2 楼lovemoreh(爱比恨多)回复于 2006-03-14 15:53:24 得分 0

能不能麻烦你说得更详细一些?呵呵,我没招啊。Top

3 楼imA(男的不会,会的不男)回复于 2006-03-14 16:08:37 得分 25

看一下你的数据库的编码方式,如果可以更改数据库的编码方式,就更改数据库的编码方式为中文Top

4 楼lovemoreh(爱比恨多)回复于 2006-03-14 16:23:28 得分 0

我用的微软的jdbc   FOR   SQL   Server2000   连接的SQL   Server2000。  
   
  我在其他软件中向数据库写入中文都是很正常的,是不是可以认为数据库是没问题的?Top

5 楼lovemoreh(爱比恨多)回复于 2006-03-14 16:53:50 得分 0

呵呵,这个问题应该是经常遇到的吧?各位都是怎么处理的?Top

6 楼pigengler(en)回复于 2006-03-14 17:00:12 得分 40

request接受到参数以后,转换一下中文格式就行了。  
  到论坛搜索一下中文,有很多类似的帖子。。。  
   
  要彻底解决,还是要用过滤器  
  Top

7 楼lovemoreh(爱比恨多)回复于 2006-03-15 14:27:15 得分 0

感谢各位的回答啊!!  
   
  在各位指点下,终于解决啦。  
   
  如pigengler(en)   兄所言,取得发帖内容后,将得到的字符转换了一下,汉字即能正常存入数据库了。语句片段如下:  
   
  String   s_tmp   =   new   String(ssubject.getBytes("ISO8859-1"),"GBK");  
   
  String   sql="insert   into   dbo.bbs_qst(   userid,   dt,   cont)   values(\'pgm\',   \'2006-03-14   16:12\',   \'"   +   s_tmp   +"\')";    
  Integer   i_rt=stmt.executeUpdate(sql);    
   
  再次感谢回答!Top

8 楼lovemoreh(爱比恨多)回复于 2006-03-15 14:28:04 得分 0

还不知道filter为何物,还得继续学习。。。。。。。Top

9 楼polarman(北极人http://blog.csdn.net/polarman)回复于 2006-03-15 14:32:41 得分 0

先要跟踪你的代码,看看是在存入数据库前已经是乱码,还是存入数据库之后再变成乱码,还是从数据库取出来变成乱码,总之,这个问题很复杂!根据具体情况,参照楼上的解码方式,但不能硬套,要根据具体情况处理Top

10 楼guanzhuangtun(郝亮)回复于 2006-03-15 21:20:44 得分 0

字符转码用GBK或gb2312就行了!Top

相关问题

  • jsp存入数据库中文字符变为乱码,怎么处理?谢先了!
  • 着急问一个问题:[ä](就是a上面有两个点的)这样特殊字符存入数据库是乱码,如何解决?
  • [JSP]数据库中的字符是乱码,why?
  • 中文字符到数据库中就变成了乱码?
  • 痛苦啊,按照书上的方法,在将数据存入数据库前,将数据转为“iso-8859-1”字符集的字符,为什么存入后还是乱码
  • 怎样将含有特殊字符的动态字串存入数据库?
  • 在JavaBean中,如何高效的将如下字符串存入数据库
  • 字符串存入数据库之前该如何的处理(进者有分)
  • 为什么数据库用了UTF8字符集后,中文还是乱码?
  • 使用EntityBean将中文存入数据库时出现乱码,如何解决?

关键词

  • sql server2000
  • 数据库
  • 乱码
  • 字符
  • 中文
  • 编码
  • bbs
  • 内容
  • sql
  • 存入

得分解答快速导航

  • 帖主:lovemoreh
  • qinqinxiatiao
  • imA
  • pigengler

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo