CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web 开发

老问题,请教一个中文显示的问题?

楼主luowenqigood()2006-05-04 12:13:12 在 Java / Web 开发 提问

我把页面表单的参数设置和javabean的参数一样,然后用<jsp:setProperty   name="cksj"   property="*"/>  
  来取得表单的参数。然后写到数据库里,在javabean里我转换了编码,如下:  
  public   void   setName(String   newID)  
    {   try{   name=new   String(newID.getBytes("ISO-8859-1"),"GB2312");}  
    catch(Exception   e){}}  
  public   String   getName()  
    {   return   name;}  
  可以把数据写到数据库里,但是中文都成了乱码。  
  一般编码转换在那里做比较好,页面上还是javabean里。为什么我上面的代码转换不了???  
  请有经验的朋友指点。。。 问题点数:20、回复次数:4Top

1 楼ruanjiantaotao(涛涛)回复于 2006-05-04 12:21:31 得分 0

一般来说,在jsp文件中加入  
  <%@page   language="java"   contentType="text/html;   charset=gb2312"%>  
  <%request.setCharacterEncoding("GBK");%>  
   
   
  再用函数String   str   =   new   String(str.getBytes("ISO-8859-1"),"GBK");转换即可  
   
  Top

2 楼luowenqigood()回复于 2006-05-04 14:30:18 得分 0

请问   ruanjiantaotao  
  我把参数都传入javabean里了,在页面上转换没用啊!  
  我试了你的方法,还是不行啊?Top

3 楼franksmith(我是谁)回复于 2006-05-04 14:37:18 得分 0

我的做法是全部用UTF-8编码  
  <%@   page   contentType="text/html;   charset=UTF-8"   %>  
  一般来说就没有问题了。  
  如果还不行的话把ServletRequest的编码也设一下:request.setCharacterEncoding("UTF-8")Top

4 楼Java_Server_Pages()回复于 2006-05-04 19:05:47 得分 0

只要在代码中加入此段代码  
   
  byte   b[     ]   =   (字符串名).getBytes("ISO-8859-1");  
   
  (   字符串名   )   =   new   String(b);  
   
  就可以很方便的解决乱码问题  
   
  如果要反复调用,就写成方法.  
   
  Top

相关问题

关键词

得分解答快速导航

  • 帖主:luowenqigood

相关链接

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

广告也精彩

反馈

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