注册 登录
编程论坛 J2EE论坛

JSP写一个下拉框和一个网页。下拉框的值是数据库里的为啥乱码?

wangchen223 发布于 2006-09-07 17:05, 3320 次点击
JSP写一个下拉框和一个网页。下拉框的值是数据库里的,我显示网站后,下拉框里的值是乱码 ??
我System.out.println(下拉框那个变量);结果不是乱码
网页上下拉框的乱码该如何解决?????
只有本站会员才能查看附件,请 登录

[此贴子已经被作者于2006-9-7 17:09:19编辑过]

23 回复
#2
zplove2006-09-07 18:06
你用一个过滤器看行不行
#3
wangchen2232006-09-07 20:08
没学那个
#4
可可℃乐2006-09-07 21:40
你检查一下估计你的数据库中存在的数据都已经是乱码了..
#5
wangchen2232006-09-07 23:37
不是乱码
System.out.println输出就可以就是放到下拉框里就出错了

[此贴子已经被作者于2006-9-7 23:38:41编辑过]

#6
angel11282006-09-07 23:51
用UTF-8或GB2312试试
#7
无理取闹2006-09-08 10:21
我也是这个问题 一直没解决 就是不能显示中文 就显示问号
#8
飘飘叶子2006-09-08 10:58

用request.setCharacterEncoding("GB2312");看看

#9
无理取闹2006-09-08 12:59
我的把所有改gb2312的都改了 还是不能显示中文
#10
wangchen2232006-09-08 13:53
又成另一种乱码了
#11
飘飘叶子2006-09-08 14:27
那么就使用字符串的重新编码
new String(*.getByte[],"gb2312");这种的,我忘记具体怎么写了……
可以试试看
#12
地狱之焰2006-09-08 16:45
new String(request.getParameter("XXX").getBytes("ISO-8859-1"))
#13
wangchen2232006-09-08 18:28
new String(slt.getTitleName().getBytes("gb2312"))
这样出来是??
slt.getTitleName().getBytes("gb2312")
是:见图
只有本站会员才能查看附件,请 登录

[此贴子已经被作者于2006-9-8 18:31:40编辑过]

#14
神vLinux飘飘2006-09-09 08:10
哈哈哈哈哈

很多要素你都要有的呀
JSP上至少要这两条:
<%@ page language="java" pageEncoding="UTF-8"%>

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

而且连接数据库、数据库中存放的也是UTF-8
#15
wangchen2232006-09-09 13:34
好了谢谢
#16
麻花2007-09-22 15:57

我的也是这个问题,给老师发了个邮件,还没回.问一下楼主,下拉框里的值如何得到啊

#17
麻花2007-09-22 16:09

数据库里是乱码吗?

#18
麻花2007-09-22 16:15
我跟你做的是一个题,我的汉字通过界面插入数据库是乱码,所以再拿出来还是乱码。
#19
atsjun2007-09-22 16:30

那就针对字符串进行转码
像这样String s=new String(s.getByte(iso-8859-1),"gb2312");
这样还不行的话 那就真的没办法了

#20
lgdcky2007-09-22 22:42
把数据库和页面的编码设置成一样的试试!
#21
dx01222007-09-27 21:45
在request.getParameter(“参数名”);前面加上request.setCharacterEncoding("gb2312");
一般就解决了。
我以前也碰到过这样的问题,就是用上面的办法解决的了。
#22
绿色的童年2007-09-27 22:10
#23
yangyawei1982007-09-30 11:31
看下你的项目的编码格式是否统一,你可以试试在web.xml里面做个过滤器
#24
xinxue2007-10-22 09:01
我同意八楼的看法
1