注册 登录
编程论坛 J2EE论坛

汉字乱码问题

wbl313 发布于 2007-03-08 11:14, 1228 次点击
我的jsp页面是CTF-8的编码方式
现在用Ajax把汉字传到Conreoll(相当于servlet)
然后再传回来这个jsp,显示的时候是乱码
请问有什么方法可以解决?
急!!!!!!!
10 回复
#2
wbl3132007-03-08 11:16
我现在在学ajax,要求页面编码是utf-8,不能用gb2312
请高手指点一下
#3
千里冰封2007-03-08 11:17
你把所有的页面的编码都改成UTF-8不就行了吗
#4
风月_无边2007-03-08 11:20

好像需要字符转化吧

#5
wbl3132007-03-08 11:36
不是啊,就是一个jsp页面跳到servlet再跳回来
我问的就是怎么进行字符转换
我查了,还是乱码
#6
风月_无边2007-03-08 13:01
String有一个构造方法可以完成不同字符类型转换
#7
ILoveMK2007-03-08 13:08
servlet就懂,jsp不知道和servlet的处理办法一样不??
#8
风月_无边2007-03-08 14:04
一样的
#9
ILoveMK2007-03-08 15:20

还没学jsp,不过如果一样的话就这样处理吧:

在代码中加入这句话response.setContentType("text/html;charset=UTF8");

然后找到 server.xml 中的
<Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding='UTF8' />

加入红色部分代码.

再找到所涉及到的html页面,把页面的charset属性改为UTF8就行了,反正servlet我是这样处理的,你回去试一试吧。

#10
球球2007-03-08 21:54
private static final String CONTENT_TYPE = "text/html; charset=UTF-8";

request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");

[此贴子已经被作者于2007-3-8 21:55:23编辑过]

#11
IcesDream2007-03-11 20:49
如果上面都不起作用可能是容器设置的问题!

是不是用的TOMCAT呀,在%tomcat%\conf\web.xml缺省的servlet下加上

<init-param>
<param-name>fileEncoding</param-name>
<param-value>UTF-8</param-value>
</init-param>

注:TOMCAT5.5以上才有
1