日期:2014-05-18  浏览次数:20778 次

pager-taglib中文乱码问题
大家都用过pager-taglib的吧  遇到传递参数是中文就乱码了  不知道怎么解决好
改源代码的方法也不行(value = java.net.URLEncoder.encode(value,"gbk");)

在action中keywords = new String(keywords.getBytes("iso-8859-1"), "gbk");
也不行!

不知道使用过的人是怎么处理中文的

急救啊  ……


如果能换个分页框架也行 请大家帮帮忙吧!

------解决方案--------------------
(value = java.net.URLEncoder.encode(value,"gbk");)
这句中你用的是net包里URLEncoder有两个方法,好像一个是编码的一个是解码的,你只用了一个,这样好像不行,你应该用对应的解码方法去解你用编码方法编的字符串,我以前用过,你试试
------解决方案--------------------
难道非得传递中文参数吗?
------解决方案--------------------
这个我解决了,但是你的情况不知道跟我的一样吗?
你上面是不是还有一个查询表单,?带查询表单的分页?
------解决方案--------------------
额。。。用乱码过滤器不行吗?
------解决方案--------------------
引用:
嗯  这是源码里面的一句 它用了encode但没有decode 式了很多次还是失败 这个东西搞的我真头大!

你没用decode啊,你用encode方法编码,到服务器用decode方法解码不就行了,我以前用过的,可以的
------解决方案--------------------
lz啊,如果实在解决不了中文我可以给你一种解决方案,很简单,就是不传中文,在后台你用一个全局的map保存一些信息,如map.put(“china”,"中国"),假如你要传“中国”,你可以传“china”,然后到后台你从map里取你想要的中文,怎么样?
------解决方案--------------------
我用utf-8 的字节数长度 和 乱码的长度做比较,前提你知道不乱码有长。乱成什么码了。长度如何,
根据长度来比较,
------解决方案--------------------
filter:UTF-8
jsp:charset=UTF-8
String username = new String(request.getParameter("username").getBytes("8859_1"), "UTF-8");
------解决方案--------------------
我也是这个问题,有答案了没?

------解决方案--------------------
支持一下!!
------解决方案--------------------
引用:
引用:
引用:

嗯 这是源码里面的一句 它用了encode但没有decode 式了很多次还是失败 这个东西搞的我真头大!

你没用decode啊,你用encode方法编码,到服务器用decode方法解码不就行了,我以前用过的,可以的


你说的没错 我之前试过了 是可以 但是只一次请求有效 再点击下一页的时候就不行了 ……


恩,我在网上找个个据说重新编译过的jar包,就是第一次可以,再点就不行了,不知道这个问题现在解决了没有啊?急求!
------解决方案--------------------
我也经常遇到乱码问题,但是很多时候是稀里糊涂给解决的,但是目前又有一个,真的是搞得我头都大了好几圈了。
------解决方案--------------------
这个我解决了,就是修改一下源码,再把它打包回去就行了,想要这个修改好的Jar包的话,上我号上去下吧,我等下传上去。。。
------解决方案--------------------
Lz   解决了吗  我遇到的问题 与你一样   改了源码  还是不行 !
------解决方案--------------------
也是用的系统默认的GBK 编码
------解决方案--------------------
看一个传智博客的老师说的方法:在页面端,使用两次js的encodeURI对中文进行编码,记住必须两次,在服务器端使用一次Url类中的decode进行解码. 绝对有效.

该方法出自:传智播客 AJAX学习视频

------解决方案--------------------
value = java.net.URLEncoder.encode(value,"gbk");)
gbk:换成 页面编码 pageContext.getResponse.getPageEncoding() (可能有错)
encode: 改源码时有4个地方要改这个。