比如我的程序是
<%@ page contentType="text/html; charset=GB2312" %>
<html>
<body>
<%
String str=request.getParameter("number");
double n=Double.parseDouble(str);
%>
<p>传过来的数值是:<br>
<%=n %>
</body>
</html>
生成的servlet代码中的中文乱码:String str=request.getParameter("number");
double n=Double.parseDouble(str);      out.write("\r\n");
      out.write("<p>浼犺繃鏉ョ殑鏁板�鏄�<br>\r\n");
      out.print(n );
      out.write("\r\n");
      out.write("</body>\r\n");
      out.write("</html>");
    } catch (Throwable t) {
把编码方式换成UTF-8生成的servlet还是中文乱码  ,怎么解决这个问题?

解决方案 »

  1.   

    <%@ page contentType="text/html; charset=GB2312" %>
    <html>
    <body>
    <%
     request.setCharacterEncoding("gb2312");
     response.setCharacterEncoding("gb2312");

    String str=request.getParameter("number");
    double n=Double.parseDouble(str);
    %>
    <p>传过来的数值是:<br>
    <%=n %>
    </body>
    </html>
    试试看 
      

  2.   

    我觉得这个问题应该不是出在JSP代码问题上,你看下你TOMCAT里面的编码是什么样的
    改成和TOMCAT里面的编码一样的格式试下吧  我的理解是:这个JSP代码是通过TOMCAT这个中间件来处理的
    不知道对不对啦  你试下啦
      

  3.   

    不行,tomcat配置改了,但还是乱码
      

  4.   

    追求Tomcat生成的Servlet中没有乱码是没有必要的。
    况且,这不一定是乱码,
    你用UTF-8字符集来看这个文件的么?
      

  5.   

    有时候servlet里中文是正常显示,打开乱码的servlet少引号出错,加上后总是让改为utf-8保存
      

  6.   

    建议你修改下MySQL数据库中的my配置文件default-character-set=gb2312,有两处要修改,基本上以后使用JSP显示的时候GBK,gb2312都是正常的了
      

  7.   

    你要用UTF-8字符集打开这个文件。
    好像DW可以的。
      

  8.   

    用EditPlus打开是正常的,怎么样才能使在eclipse里显示正常?
      

  9.   

    JSP的乱码问题,不要琢磨JSP的影子Servlet,没有很大用。
    保持JSP文档中几个方面的一致就行了:
    1。JSP文档自己的文件物理字符集(Eclipse中文件属性中设置),具体到你的情况就是GB2312
    2。<head>中的<META http-equiv=Content-Type content="text/html; charset=gb2312">
    3。<%@ page contentType="text/html; charset=GB2312" %>