当前位置:编程学习 > JAVA >>

request.getParameter无法获取中文

request.getParameter无法获取中文,只能获取字母与数字
最奇怪的是,我新增跟修改是同一个JSP页面,新增的时候完全没问题,就是修改的时候出现这个问题! --------------------编程问答-------------------- 调用任何request.getParameter之前先调用一次request.setCharacterEncoding("GBK"); --------------------编程问答-------------------- 确定不是页面问题那就看看你的action,编码没问题吧! --------------------编程问答--------------------
引用 2 楼 acherat 的回复:
确定不是页面问题那就看看你的action,编码没问题吧!

新增跟修改也是用同一个aciton方法! --------------------编程问答--------------------       把编码设成gbk应该就好了 --------------------编程问答-------------------- 不可能的!
只会获取到的可能是乱码而已。
你仔细检查一下。
--------------------编程问答--------------------
引用 1 楼 chdw 的回复:
调用任何request.getParameter之前先调用一次request.setCharacterEncoding("GBK");

加了也效果
其实,最奇怪的是,它不是乱码,是得不到中文!哎! --------------------编程问答--------------------
引用 5 楼 liutianxiong888 的回复:
不可能的!
只会获取到的可能是乱码而已。
你仔细检查一下。

如果是乱码还好解决,现在是获取不到中文数据。 --------------------编程问答-------------------- 用表单的post提交,request.setCharacterEncoding("GBK");
response.setCharacterEncoding("gbk") --------------------编程问答-------------------- 难到获取到的是""吗????
如果是null,那就是没有这个名称。 --------------------编程问答-------------------- 楼主文本域名字用的中文吧 --------------------编程问答-------------------- <input type="text" name="哈哈" value="哈哈"/> --------------------编程问答-------------------- 查看一下你jsp文件中的头部信息看看 --------------------编程问答-------------------- 页面上的 字符编码 以及 request,response的编码
页面的不说了
request.setCharacterEncoding("GBK");
response.setContentType("text/html;charset=GBK"); --------------------编程问答-------------------- 问问题的模棱两可
下面回复的乱猜一气

先在的csdn真是没话说 --------------------编程问答-------------------- 不理解,就算是编码问题,乱码也能传过去啊!应该是名字不匹配吧! --------------------编程问答-------------------- 获取的值是什么? --------------------编程问答-------------------- 是form提交还是ajax提交,如果是form提交,可能是名称有问题,如果是ajax,有这样的一种情况,就是参数都是写在url后面的,有可能取不到中文,这个时候可以在&xxx==哈哈 的前面加上字母或者数字什么的。。。如改成a=a&xxx&xxx=哈哈 --------------------编程问答-------------------- 關注中。。。。 --------------------编程问答-------------------- 页面上的 字符编码 以及 request,response的编码
页面的不说了
request.setCharacterEncoding("GBK");
response.setContentType("text/html;charset=GBK");

最好自己写个Filter,那样方便 --------------------编程问答-------------------- 字符集的问题,你用的是tomcat吗?tomcat的servlet默认字符集是iso8859,看看你的页面的字符集是什么什么字符集,比如是utf8或者gb2312之类的,请转码 --------------------编程问答-------------------- 问题应该说清楚一点,不要让别人去猜你遇到的问题,那样会比较好一点! --------------------编程问答-------------------- 重新建一个JSP,填写一个表单试试,可以的话,把那个页面重新写一下,可能你会发现问题的 --------------------编程问答-------------------- 什么叫得不到中文 ?

用firebug看看到底都发送了些什么东西给服务器,

要是真的发送了,那肯定是能取到的 --------------------编程问答-------------------- 编码问题!
request请求默认的是iso-8859-1编码
如果直接用它来取中文,肯定会造成中文乱码问题
解决方法:
可在使用requse之间,对它进行编码设置

// 设置request与response的编码
response.setContentType("text/html");
request.setCharacterEncoding("GBK");
response.setCharacterEncoding("GBK");
--------------------编程问答-------------------- 我今天也遇到楼主的问题了
var v="中文";
window.location.href="http://locahost/fileap/index.jsp?filename="+v;
这样在另一个JSP页面就无法获得中文了
request.setCharacterEncoding("GBK");
response.setContentType("text/html;charset=GBK");
String savename=request.getParameter("v");
把v输出就是  NAME OMZET 
期待答案 --------------------编程问答--------------------
引用 25 楼 itbossbaby 的回复:
我今天也遇到楼主的问题了
var v="中文";
window.location.href="http://locahost/fileap/index.jsp?filename="+v;
这样在另一个JSP页面就无法获得中文了
request.setCharacterEncoding("GBK");
response.setContentType("text/html;charset=……


这个 中文值 得做URL 转码处理吧,直接在URL里传中文铁定出问题的。 --------------------编程问答-------------------- 如果用SSH框架,在过滤器的时候,过滤一下编码 

request.setCharacterEncoding(encoding);

encoding改为你自己要转的编码集,如果没框架,就调用之前先转码吧 --------------------编程问答-------------------- 看看源文件把 --------------------编程问答--------------------
引用楼主 zjsoyen 的回复:
request.getParameter无法获取中文,只能获取字母与数字
最奇怪的是,我新增跟修改是同一个JSP页面,新增的时候完全没问题,就是修改的时候出现这个问题!



LZ的问题是这样的。。。无法获取中文,而不是你们所说的乱码。

  如果是乱码还好解决,现在是获取不到中文数据。

  在action设断点跑下。。在不行就贴代码。。说的不清不楚。。。

补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,