标题:servelet中文乱码问题
只看楼主
flybenzsl500
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2008-4-10
 问题点数:0 回复次数:5 
servelet中文乱码问题
我在servelet中通过out.print("<script>alert('失败');</script>")想弹出失败对话框.可是alert()中的文字是乱码.表现为两个问号.请各位指点一下!!
搜索更多相关主题的帖子: servelet 乱码 中文 对话框 alert 
2008-04-10 22:20
Ethip
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:771
专家分:0
注 册:2008-1-18
得分:0 
回复 1# 的帖子
响应用户请求时,应首先设置返回页面的类型和字符集!!!

你的servlet中的doGet()或者doPost()方法(或者service())里面有下面这行代码没有:
response.setContentType("text/html;charset=gb2312");
2008-04-11 11:11
tomneusoft
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2007-4-22
得分:0 
回复 2# 的帖子
我的主要问题是在写Cookie的时候,我在进行验证的时候,往里写入的是汉字,然后在新的界面显示的是乱码,response.setContentType("text/html;charset=gb2312");这个方法我试过了,但是不好使,还有其他的方法吗?再就是是否在Cookie中不能写入中文.
2008-04-11 11:49
flybenzsl500
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2008-4-10
得分:0 
感谢2楼
我的问题已经解决就是按照你说的那样。谢谢了
2008-04-11 20:10
威震天下
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2007-2-19
得分:0 
回复 3# 的帖子
response.setContentType("text/html;charset=gb2312");
该设置是告诉浏览器以中文方式显示页面的内容.

你说的往cookie里写东西,这是编码格式不同导致的
往cookie里写,是以iso-8859-1格式,所以你取出来的时候要转码
你取出来的定是个字符串,假定为String strName;
eg:
 String str = new(strName.getBytes("iso-8859-1"),"gb2312");
2008-04-11 20:24
Ethip
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:771
专家分:0
注 册:2008-1-18
得分:0 
回复 3# 的帖子
同意5楼!
数据在传输过程中的字符编码标准是iso的,显示时是gb2312!传输时,要进行字符编码转换!
2008-04-12 10:38



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-208312-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.043784 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved