x.jsp页面的代码:
<%@ page contentType="text/html; charset=GBK" %>
<%
request.setCharacterEncoding("GBK"); String param1=request.getParameter("param1");
String param2=request.getParameter("param2"); //param1 = new String(param1.getBytes("8859_1"),"GBK");
//param2 = new String(param2.getBytes("8859_1"),"GBK");
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<link href="css.css" rel="stylesheet" type="text/css"></head>

解决方案 »

  1.   

    容器、os、数据库字符集均为GBK
      

  2.   

    x.jsp页面的代码:
    <%@ page contentType="text/html; charset=GBK" %>这里出错了
     包含的页面这样转码是重复定义错误的不可以那样的……
    <%@ page pageEncoding="gb2312"%>
      

  3.   

    <%@ page pageEncoding="gb2312"%>这样也是不行的,没有变化。我在本机调试时从不有这个问题(本机windows),在服务器(linux)上就出这个问题了
      

  4.   

    <form enctype="multipart/form-data"></form>
      

  5.   

    <jsp:param name="param1" value=<%=java.net.URLEncoder.encode("汉字")%> />
    String value=new String();
    value=request.getParameter("value");
    value=String(value.getBytes("8859_1"),"gb2312");
      

  6.   

    <jsp:param name="param1" value=<%=java.net.URLEncoder.encode("汉字")%> />
    这样肯定不行,jsp编译都通不过本来已经配置了转码的过滤器,所有发送的请求都转码了,其他的都不存在问题,就是这个地方有问题啊,
    真的是要求救了!
      

  7.   

    将包含x.jsp页面的JSP文件头部加入<%@ page pageEncoding="gb2312"%>
    应该可以解决的,我以前就是这样解决windows-->linux转移的
      

  8.   

    minisun2000(天生不专一) 我根据这个方法再次试了一回,但事实上没任何变化
    include的传值是GET吧
      

  9.   

    pageEncoding是设置编译编码的吧,和GET没什么关系吧!
      

  10.   

    如果显示为
    鐢ㄦ埛绠$悊应该说明是utf-8编码
    你可以试一试
      

  11.   

    其实JSP中的字符串应该分成3种:
    1.传入的:要想正确显示这种字符串,需要两个条件
       A.request.setCharacterEncoding设置正确的接收编码
       B.response.setContentType设置正确的输出编码
    2.JSP脚本中的字符串(即<%%>中出现的字符串):要想正确显示这种字符串,也需要两个条件
       A.pageEncoding设置正确的编译编码
       B.response.setContentType设置正确的输出编码
    3.JSP中的HTML代码:要想正确显示这种字符串,只需要一个条件
       A.pageEncoding设置正确的编译编码
    其中第三点我也没搞太懂是什么原因,不过实验结果是这样的!
    至于中文到底是怎么转来转去的,有时间再写,满长的:)