初学JSP
遇到两个问题
<%@ page contentType="text/html; charset=GBK" %>
<html>
<head>
<title>jshell ver 0.1</title>
</head>
<body>
<%
request.setCharacterEncoding("gbk");
String input=request.getParameter("input");
out.println(input);
%>
</body>
</html>这个问题我问过了 不过现在又有了 还是不明白 已经加上
request.setCharacterEncoding("gbk");  可是访问1.jsp?input=我
的时候 看到的还是问题另一个问题 
参数里有空格怎么办啊?还有有汉字怎么办? 谢谢回答!

解决方案 »

  1.   

    URL里最好不要加汉字,可以用POST提交,如果非要加汉字不可可以先进行编码,编码方法可以看看我的博客:http://www.blogjava.net/yczz/articles/109866.html
      

  2.   

    在发送请求的页面加
    response.setCharacterEncoding("gbk")
      

  3.   

    最好不要用URL传参,如果要传最好也用UNICODE编码后再传,那样也不容易出错
      

  4.   

    我在网上找到的答案基本上都试了 还是不行啊  一有汉字还是出错
    我主要是想实现这样一个功能输入一个目录
    然后提交表单后列出这个目录下所有的文件!可是如果目录名是中文的 就成乱码了
    还有 如果目录名中间有空格
    目录名就被截断了我用get方法提交的  谁能帮忙写个示例代码我看看啊
      

  5.   

    用这个试试
    <%@ page contentType="text/html; charset=GBK" %>
    <html>
    <head>
    <title>jshell ver 0.1</title>
    </head>
    <body>
    <%
    request.setCharacterEncoding("GB2312");
    String input=request.getParameter("input");
    out.println(input);
    %>
    </body>
    </html>
      

  6.   

    缺省Encoding是用UTF-8,不用去变它.而用下面的转换转一下即可.byte[] bytes=input.getBytes();
    try {
    String a=new String(bytes,"GBK");
    } catch (UnsupportedEncodingException e) {
    e.printStackTrace();
    }
      

  7.   

    我发现一个问题
    只要是用get方式提交的数据
    加上
    request.setCharacterEncoding("gb2312");
    根本不管用啊 提交汉字 出现的乱码不过如果改成post就可以正常显示