日期:2014-05-19  浏览次数:20791 次

从jsp的地址栏里得到的参数,转成ISO-8859-1后,有的是乱码,怎么办?
jsp的路径是http://localhost:8080/kaoqin.jsp?username_p=李嫄


jsp的代码如下:
HTML code

<%
    fullname_str = request.getParameter("username_p");
    fullname_str = new String(fullname_str.getBytes("ISO-8859-1"),"gb2312");
        out.println(fullname_str);
%>



打印出来的结果是李??,其他人名都正常,只有这个“嫄”字是乱码,咋办呢?

------解决方案--------------------
utf-8呢?
------解决方案--------------------
是http://localhost:8080/kaoqin.jsp?username_p=李嫄

最好不要这么传,把参数值放到request里再获取。
最好把相关的源码都贴出来。
------解决方案--------------------
页面改成UTF-8,
接收参数是编码也改成UTF-8
request.setCharacterEncoding("UTF-8");
------解决方案--------------------
js有个函数encodeURI(url) 可以正确传递带有中文的url 绝对解决问题!

------解决方案--------------------
探讨

js有个函数encodeURI(url) 可以正确传递带有中文的url 绝对解决问题!

------解决方案--------------------
String str=new String(pro1.getName().getBytes("ISO-8859-1"),"utf-8");
------解决方案--------------------
探讨

这个jsp地址是别人发给我的,他也是从另一个软件自动生成的,所以不能从源头上改jsp的url。

只能在request得到参数后,想办法避免乱码的出现

引用:

引用:

js有个函数encodeURI(url) 可以正确传递带有中文的url 绝对解决问题!


function submitUrl(){
window.locati……