乱码问题 比较难解决 帮帮忙

synized 2012-02-08 11:26:36
我是从JSP界面得到一个中文参数 然后传给另一个SERVLET 我输出了一下是中文 没有出现乱码 然后我在这个servlet中用response请求重定向URL带参传到另一个servlet中 输出得到的是“乱码” 过滤器 req.setCharacterEncoding("GBK");
resp.setCharacterEncoding("GBK");都设置了还是不行 求高手解决
...全文
108 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
极标 2012-02-08
  • 打赏
  • 举报
回复
请贴出关键代码
synized 2012-02-08
  • 打赏
  • 举报
回复
response.sendRedirect("GuanLiServlet?pageNow=0&zuozhe="+zuozhe);在这边输出的还是中文的 传到GuanLiServlet得到的就是乱码了
unbelievable2010 2012-02-08
  • 打赏
  • 举报
回复
重定向是URL请求 浏览器会进行转码 建议在Get里面接受试试 或者get(XXXX){this.post(XXXX)}
synized 2012-02-08
  • 打赏
  • 举报
回复
全部都是GBK编码
结贴是美德 2012-02-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 flagiris 的回复:]

Encode
Decode
试试呢。
[/Quote]

或者改tomcat的server.xml也行
synized 2012-02-08
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 goodsun00 的回复:]

servlet 的话 建议写个过滤器
然后 编码的话
页面一个编码
传给servlet 一个编码
servlet回传给页面 一个编码
最后页面显示一个编码
请统一
[/Quote]已经设置过滤器了
synized 2012-02-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 flagiris 的回复:]

Encode
Decode
试试呢。
[/Quote]求代码..
goodsun00 2012-02-08
  • 打赏
  • 举报
回复
servlet 的话 建议写个过滤器
然后 编码的话
页面一个编码
传给servlet 一个编码
servlet回传给页面 一个编码
最后页面显示一个编码
请统一
菖蒲老先生 2012-02-08
  • 打赏
  • 举报
回复
Encode
Decode
试试呢。
synized 2012-02-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 flagiris 的回复:]

Encode
Decode
试试呢。
[/Quote]
zuozhe=URLEncoder.encode(zuozhe);
response.sendRedirect("GuanLiServlet?pageNow=0&zuozhe="+zuozhe);
另一个servlet
String zuozhe = request.getParameter("zuozhe");
zuozhe=URLDecoder.decode(zuozhe);
已解决问题 谢谢
stevenzxl 2012-02-08
  • 打赏
  • 举报
回复
重定向的时候,是不带编码格式传递的。所以浏览器它是按照自己的解码方式进行解码即默认解码方式。(具体跟你服务器设置有关)
这时候你要在url里面传递过去一个参数也确定其解码方式。
大致代码如下:

某类的重定向方法中
.....
StringBuffer urlBuffer = new StringBuffer ();
urlBuffer.append("xxx/xxx/xxx.action");
urlBuffer.append("?username="+URLEncoder.encode(username, "GBK"));
.....

81,095

社区成员

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

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