解决过诸多中文问题,可是这次...

will52000 2004-11-20 07:33:42
我在jsp里读出mysql数据库里的数据,过去用jdbc-odbc桥直接读出没问题,可是最近用jdbc却读不出来,用了多重方法都不成,还有就是又是读出来的数据输出到控制台正常,可是输出到页面又是乱码,谁有这方面的经验,并给出解释。
...全文
79 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
will52000 2004-11-20
  • 打赏
  • 举报
回复
问题已经解决了,特总结如下:我的问题是<%@ page language=“Java” contentType="text/html; charset=gb2312"%>里language属性要加上。
constantine 2004-11-20
  • 打赏
  • 举报
回复
up
guojian_ren 2004-11-20
  • 打赏
  • 举报
回复
请楼主参考:
http://www.washington.edu/computing/web/publishing/mysql-access.html如何解决jsp调用mysql的中文乱码问题- -

回贴(二)

如果数据库中有中文的话而mysql默认的语言不是中文时要在配置文件C:\winnt\my.ini 中的 [mysqld] 里添加一行:
default-character-set=gbk然后重起mysql
如果还有问题在程序中写
connection = DriverManager.getConnection( "jdbc:mysql://localhost/test?user=root&password=&useUnicode=true&characterEncoding=GBK" );
或者在jsp中声明:<%@ page contentType="text/html; charset=gb2312" language="java" ……
如果出现调用mysql中的中文数据正常显示了,但是jsp中的html中的中文为乱码时
你编写htm的工具写入的不是gb2312的中文,所以会出现这种问题。我以前用Emeditor
直接打中文也是会这样,htm中的中文和在页面中输入的中文数据怎么都合不起来,
后来我改用Editplus来重新写过htm中的中文才行也许你遇到的情况和我的差不多。
试下用另一种编辑工具来改写htm中其中一些中文看看效果,也许问题就解决了。

guojian_ren 2004-11-20
  • 打赏
  • 举报
回复
上面的问题已经解决,但是有出现了一个新的问题。
我用的是Windows 200 + apache 2.0 + resin 2.1.9 + mysql
就是从数据库里面读出的中文数据出现乱码,看了看网上的解决方法,自己尝试了以下做法,在JSP在头部加入
代码:
<%@ page language=“Java” contentType=“text/html; charset=gb2312”%>

这样还不行,出数据库里读出的数据还是乱码,去掉刚才在头部加入的一段代码。然后加入
引用:
<meta http-equiv=“Content-Type” content=“text/html; charset=gb2312”>

从数据库里读出的数据中文可以正常显示了,但是页面的中文又出现乱码了,郁闷!!

后来的解决方法是,在头部加入
引用:
<%@ page language=“Java” contentType=“text/html; charset=gb2312”%>[/

从数据库里读出的中文经过如下的函数转换一下
引用:
public String getStr(String str){
try{String temp_p=str;
byte[] temp_t=temp_p.getBytes("ISO8859-1");
String temp=new String(temp_t);
return temp;
} catch(Exception e){
return "null";
}

}
hopelly 2004-11-20
  • 打赏
  • 举报
回复
我也想知道。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧