换成((String)session.getValue("Useraccount")).getBytes("iso-8859-1")就可以了,没做类型转换

解决方案 »

  1.   

    <%
    String s1 = new String((String)session.getValue("Useraccount").getBytes("iso-8859-1"),"gb2312");
     %>
     <%=s1%>
      

  2.   

    我修改了一下
     <%
     out.println(((String)session.getValue("Useraccount")).getBytes("iso-8859-1"));
     %>但是出现了新问题,我的值发生了变化,我存储的Useraccount值为“你好”,但是显示的却是[B@1b6a053 
    这是怎么回事?
      

  3.   

    treestar001(小鸟) 你的修改报错
    500 Servlet Exception
    Note: sun.tools.javac.Main has been deprecated.
    /scm/inc/bottom.jsp:44: Incompatible type for constructor. Can't convert
    java.lang.String to byte[].
    String s1 = new String((String)session.getValue("Useraccount").getBytes("iso-8859-1"),"gb2312");
                           ^
    /scm/inc/bottom.jsp:44: Method getBytes(java.lang.String) not found in
    class java.lang.Object.
    String s1 = new String((String)session.getValue("Useraccount").getBytes("iso-8859-1"),"gb2312");
                                                                           ^
    Note: C:\resin-2.1.14\doc\WEB-INF\work\_scm\_inc\_bottom__jsp.java uses
    or overrides a deprecated API.  Recompile with "-deprecation" for details.
    2 errors, 2 warnings--------------------------------------------------------------------------------
    Resin 2.1.14 (built Thu Jul 1 18:39:55 PDT 2004)
      

  4.   

    我修改了一下
     <%
     out.println(((String)session.getValue("Useraccount")).getBytes("iso-8859-1"));
     %>但是出现了新问题,我的值发生了变化,我存储的Useraccount值为“你好”,但是显示的却是[B@1b6a053 
    这是怎么回事?
    但是我用
     <%
      out.println((String)session.getValue("Useraccount"));
      %>
    发现显示全是?????