jsp页面中代码,对中文字符的打印
<%
String temp,key;
temp=request.getParameter("ok");
byte [] byte1;                         //这里直接定义一个字节
byte1 = temp.getBytes("iso-8859-1");  //再把字节强制转换成简体中文格式
key= new String(byte1);               //把完成的中文字符串输出。
 out.print(key);
%>
改成函数为什么会出错
<%!
private void a()
String temp,key;
temp=request.getParameter("ok");  //出错行
byte [] byte1;                         
byte1 = temp.getBytes("iso-8859-1");  //出错行
key= new String(byte1);               
 out.print(key);                  //出错行
%>请大家帮忙说说道理

解决方案 »

  1.   

    你为啥要声明成private?
    你换成public试试
    servlet里面的方法都是public的
      

  2.   

    title=new   String(title.getBytes("iso-8859-1"),"utf-8");
    这样写才可以
      

  3.   

    <%!%>用法不对   void a()
    语法也错误
      

  4.   

    ISO-8859-1
    这个是搞中文的么?我记得是兼容unicode的ASCII码包装集啊。
      

  5.   

    既然是函数 ,那么函数体就得要用大括号括起来
    然后还得要调用这个函数,否则不显示内容
    byte1 = new String(temp.getBetys("ISO-8859-1"),"utf-8")
      

  6.   

    <%!%>用法不对 
    void a()
    语法也错误真是的 哪有这么写 函数的啊?
      

  7.   

    <%!
    private void a()  //有问题。
    String temp,key;
    temp=request.getParameter("ok"); //出错行
    byte [] byte1; 
    byte1 = temp.getBytes("iso-8859-1"); //出错行
    key= new String(byte1); 
    out.print(key); //出错行
    %>
      

  8.   

    跟private修饰符没关系,你这个a()是方法吗?
    private void a(){
    //这才是方法。。
    }
      

  9.   

    utf-8是经常使用的! jsp都忘光了 !呵呵
      

  10.   

    你好,楼主!
    1.首先一个方法的方法体必须用花括号括起来
    2.我觉得方法的局限最好用public.
    第一个出错行
    temp=request.getParameter("ok"); 单从语法来说,这行一定是没问题的。
    3.第二个出错行
    byte1 = temp.getBytes("iso-8859-1"); 
    改成这样的
    byte1 = new String(temp.getBetys("ISO-8859-1"),"utf-8");然后再试试。
      

  11.   

    函数不要<%! %>,声明成public的比较好,reques,out也没有吧
      

  12.   

    我改成下面这样了,还是出错,
    <%          //出错行
    public void a(){ //出错行
    String temp,key;
    temp=request.getParameter("ok");
    byte [] byte1;                         //这里直接定义一个字节
    byte1 = new String(temp.getBetys("ISO-8859-1","utf-8"));
    key= new String(byte1);               //把完成的中文字符串输出。
     out.print(key);
    }
    %>
      

  13.   

    <%! public String aa()
    {
    String temp;
    temp="fdfd";
    return temp;
    }%>
    上面这样写不会出错,假如下面这样就出错
    <%! public String aa()
    {
    String temp;
    temp="fdfd";
    temp=request.getParameter("ok");
    return temp;
    }%>
    真是怪temp=request.getParameter("ok");为什么不能写到这个函数里
      

  14.   

    a)声明(Declarations)
    语法:<%! .. %>  作用:声明一些变量,方法内部类等等
    b)表达式(Expressions) :使用表达式不加分号
    1)变量
    2)方法调用
    3)表达式
    语法:<%= .. %>  作用:输出数据到客户端c)脚本(Scripiets)  结束加分号
    可以持现的java代码:可以在_jspService方法中出现的一切java代码都可以出现
    语法:<% .. %>  作用:在jsp 的_jspService方法中嵌入java代码
      

  15.   

    觉得楼主 对 <%!%> <%=%> 和<%%>的用法 还不怎么了解。
      

  16.   

    楼主到Tomcat目录\work\Catalina\localhost\项目名\org\apache\jsp下面看看jsp对应的*.java文件就知道怎么回事了*. jsp文件是要"编译"成java文件的.<%!%> <%=%> 和<%%>表示一些特殊的代码处理.