<%
           String cdir=request.getParameter("dir");
           cdir=new String(cdir.getBytes("iso-8859-1"),"UTF-8");
            String cur=request.getParameter("name");
           String realDir=application.getRealPath("/shared"+cdir);
           String realDir1=application.getRealPath("/shared"+cdir+cur);
           File f=new File(realDir);
           File f1=new File(realDir1);
            f.renameTo(f1);
           response.sendRedirect("index.jsp?dir="+java.net.URLEncoder.encode(cdir, "utf-8"));
         %>
系统提示这行有错误:cdir=new String(cdir.getBytes("iso-8859-1"),"UTF-8");
这行有什么错误呢。。

解决方案 »

  1.   

    request.getParameter("dir")  是不是有可能取到的是null值
      

  2.   

    debug跟一下  或者打印出来看一下...
      

  3.   

    如果不是cdir为空的话,有可能是iso要大写,ISO
      

  4.   

    有可能是iso要大写,ISO。试试吧。
      

  5.   

    cdir=new String(cdir.getBytes("ISO8859-1"),"utf-8");或者 
    String cdir=new String(request.getParameter("dir").getBytes("ISO8859-1"),"UTF-8");
      

  6.   

    type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: An exception occurred processing JSP page /re.jsp at line 1916:     <body>
    17:          <%
    18:            String cdir=request.getParameter("dir");
    19:            cdir=new String(cdir.getBytes("ISO-8859-1"),"UTF-8");
    20:             String cur=request.getParameter("name");
    21:            String realDir=application.getRealPath("/shared"+cdir);
    22:            String realDir1=application.getRealPath("/shared"+cdir+cur);
    Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:519)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:428)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    root cause java.lang.NullPointerException
    org.apache.jsp.re_jsp._jspService(re_jsp.java:69)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:386)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    note The full stack trace of the root cause is available in the Apache Tomcat/6.0.32 logs.这是错误提示
      

  7.   

    因为想要实现更名操作在index.jsp中有这条语句out.print("<a href=rename.jsp?dir="+cDir+">更名</a>");
    这是另一个页面的内容:<form method="post" action="re.jsp">
              更名:<input type="text"  name="name">
              <input type="submit" value="确定">
              </form>
          想要由用户决定名字。。下来就是上次贴出来的代码了。