servlet中用request.getParameter()取得的值为什么是乱码?

sbaiss 2011-02-01 11:14:50
我用request.getParameter()获取Html文件内参数值,但不知道为什么获取的值是乱码。取得的值应该是“删除到垃圾箱”,我用out.print()和System.out.println()将这个值分别打印在了浏览器和命令行中,浏览器中显示ɾ³ýµ½À¬»øÏä,命令行中显示的全是问号。

Servlet程序已设置 response.setContentType("text/html;charset=utf-8");
response.setCharacterEncoding("utf-8");

html文件已设置 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

html中用<input type="submit" name="del" value="删除到垃圾箱">向程序传递参数

谁知道问题出在哪,帮我一下。
...全文
543 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
kai27ks 2011-02-07
  • 打赏
  • 举报
回复
乱码问题的关键就是编码一致。采用支持中文的编码格式。
zheshan111 2011-02-07
  • 打赏
  • 举报
回复
建议楼主去百度搜一下 servlet jsp 的中文传值 都是编码方式的问题;
你的问题你试一下将得到的字符串重编码一下 比如

String s=request.getParameter("xxx");
s=new String(s.toByte("iso-8859-1"),"utf-8");

看看还是不是乱码了 这种编码问题产生的中文乱码情况很多,希望楼主自己整理一下
幽饮烛 2011-02-07
  • 打赏
  • 举报
回复
post 的,LS 已经说得很明白了。

get 的如果你用 tomcat 的话,可以配置 tomcat 关于 url 的编码。


不过最好还是不要用 url 传中文,因为几乎没人会那样做。
ljm19891118 2011-02-07
  • 打赏
  • 举报
回复
在传值的页面也加上这
 response.setCharacterEncoding("gb2312");
wxjlogo 2011-02-06
  • 打赏
  • 举报
回复
request response 都写上比较保险
dinghun8leech 2011-02-02
  • 打赏
  • 举报
回复
这个方法默认是按iso88591取的。
yaganblw 2011-02-02
  • 打赏
  • 举报
回复
request,不是response,
处理请求时的编码,不是响应时候的。
楼上说的很清楚了
quanwe 2011-02-02
  • 打赏
  • 举报
回复
简单.
Servlet程序已设置
response.setContentType("text/html;charset=utf-8");
response.setCharacterEncoding("utf-8");

你这里设置的是response.
而你使用的是request.
Acesidonu 2011-02-02
  • 打赏
  • 举报
回复
request.setCharacterEncoding("utf-8");
  • 打赏
  • 举报
回复
上面所说的仅适用于 POST 方法

如果是 GET 方法或者 URL 传参的话,就是 CSDN Java/Web 版的周经帖,在 Google 上搜索以下关键字:

java get 乱码 site:csdn.net
  • 打赏
  • 举报
回复
在 request.getParameter 之前加上这一句:

request.setCharacterEncoding("UTF-8");

最好写个 URL Pattern 为 /* 的 Servlet Filter,在 doFilter 上写上:

request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
chain.doFilter(request, response);

当然了,这个 UTF-8 不用写死在代码中,可以在 Filter 的 init-param 中配置

23,404

社区成员

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

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