在JSP下如何通过浏览按钮来获取文件绝对路径,并且将文件的绝对路径跟我们提供的路径哪个相匹配,<form name="form1" method="post" action="SBie_deal.jsp">
<input name="address" type="file" size="65">
<input name="submit" type="submit" value="男女">
</form>
<%
  String address=chStr.convertStr(request.getParameter("address")); ;
  String add1="C://my//11//11.jpg";
  String add2="C://my//11//12.jpg";
  String type="";
  String cover="";
  if(address==add1)
  {type=“男人”;
   cover="0001.jpg";
  }
   else
   {if(address==add2) 

type=“女人”;
            cover="0002.jpg";
}else
            { type=“不是人”;
                      cover="0003.jpg";                     }
   }
%>

解决方案 »

  1.   

    <%
      String address=chStr.convertStr(request.getParameter("address")); ;
      String add1="C://my//11//11.jpg";
      String add2="C://my//11//12.jpg";
      String type="";
      String cover="";
      if(address.equals(add1))
      {type=“男人”;
       cover="0001.jpg";
      }
          else
          {if(address.equals(add2)) 
            { 
                type=“女人”;
                cover="0002.jpg";
            }else
                    { type=“不是人”;
                          cover="0003.jpg";                     }
          }
    %>
    字符串内容的比较应该用.equals()
    那个路径是否有问题啊?好像是用\\或/的哦
      

  2.   

    try {
        File f = new File("C:\\my\\11\\11.jpg");
        File fa = new File(address);
        if (f.equals(fa)) {
           //...
        } else {
           //...
        }} catch (Exception e) {}
      

  3.   

    可能你没有提交成功!
    把action="SBie_deal.jsp"
    这段代码改为:
    action="${pageContext.request.contextPath}/SBie_deal.jsp">
    看看,是contextPath这个还是这个ContextPath,记不清了,你试一试看看。
      

  4.   

    <input name="address" type="file" size="65">这样的表单提交,可以拿到address吗?我去测试看看。都忘了!
      

  5.   


    org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: 11 in the jsp file: /SBie_deal.jsp
    Syntax error on token ")", delete this token
    8:   String add2="C:\\my\\002.jpg";
    9:   String type="";
    10:   String cover="";
    11:   if(address.equals(add1)))
    12:   {type=“男”;
    13:    cover="0001.jpg";
    14:   }
    An error occurred at line: 5 in the jsp file: /SBie_deal.jsp
    Syntax error on tokens, ArrayInitializer expected instead
    2:  import="java.sql.*" %>
    3: <jsp:useBean id="connDB" scope="page" class="beans.connDB"/>
    4: <jsp:useBean id="chStr" scope="page" class="beans.chStr"/>
    5: <%
    6:   String address=chStr.convertStr(request.getParameter("address")); ;
    7:   String add1="C:\\my\\001.jpg";
    8:   String add2="C:\\my\\002.jpg";
    An error occurred at line: 16 in the jsp file: /SBie_deal.jsp
    Syntax error on token ")", delete this token
    13:    cover="0001.jpg";
    14:   }
    15:    else
    16:    {if(address.equals(add2))) 
    17:  { 
    18:  type=“女”;
    19:             cover="0002.jpg";
    An error occurred at line: 5 in the jsp file: /SBie_deal.jsp
    Syntax error on tokens, ArrayInitializer expected instead
    2:  import="java.sql.*" %>
    3: <jsp:useBean id="connDB" scope="page" class="beans.connDB"/>
    4: <jsp:useBean id="chStr" scope="page" class="beans.chStr"/>
    5: <%
    6:   String address=chStr.convertStr(request.getParameter("address")); ;
    7:   String add1="C:\\my\\001.jpg";
    8:   String add2="C:\\my\\002.jpg";
    Stacktrace:
    org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:85)
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
    org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:435)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:298)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:277)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:265)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:564)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:299)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    会出现这种错误 !
      

  6.   

    if(address.equals(add1)))
    多了一个括号
      

  7.   

    括号改过了,不是错误!type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: 5 in the jsp file: /SBie_deal.jsp
    Syntax error on tokens, ArrayInitializer expected instead
    2:  import="java.sql.*" %>
    3: <jsp:useBean id="connDB" scope="page" class="beans.connDB"/>
    4: <jsp:useBean id="chStr" scope="page" class="beans.chStr"/>
    5: <%
    6:   String address=chStr.convertStr(request.getParameter("address")); ;
    7:   String add1="C:\\my\\001.jpg";
    8:   String add2="C:\\my\\002.jpg";
    An error occurred at line: 5 in the jsp file: /SBie_deal.jsp
    Syntax error on tokens, ArrayInitializer expected instead
    2:  import="java.sql.*" %>
    3: <jsp:useBean id="connDB" scope="page" class="beans.connDB"/>
    4: <jsp:useBean id="chStr" scope="page" class="beans.chStr"/>
    5: <%
    6:   String address=chStr.convertStr(request.getParameter("address")); ;
    7:   String add1="C:\\my\\001.jpg";
    8:   String add2="C:\\my\\002.jpg";
    An error occurred at line: 22 in the jsp file: /SBie_deal.jsp
    Syntax error on token ""00"", { expected
    19:             cover="0002.jpg";
    20:  }else
    21:  {
    22:  type="00"
    23:  cover="0003.jpg"
    24:  }  
    25:    }
    An error occurred at line: 14 in the jsp file: /SBie_deal.jsp
    Syntax error, insert ";" to complete BlockStatements
    11:   if(address.equals(add1))
    12:   {type=“男”;
    13:    cover="0001.jpg";
    14:   }
    15:    else
    16:    {if(address.equals(add2)) 
    17:  { Stacktrace:
    org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:85)
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
    org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:435)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:298)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:277)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:265)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:564)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:299)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
      

  8.   

    把代码改成:<%@ page contentType="text/html; charset=gb2312" language="java"
     import="java.sql.*" %>
    <jsp:useBean id="connDB" scope="page" class="beans.connDB"/>
    <jsp:useBean id="chStr" scope="page" class="beans.chStr"/>
    <%
      String address=chStr.convertStr(request.getParameter("address")); ;
      String add1="C:\\my\\001.jpg";
      String add2="C:\\my\\002.jpg";
      String type="";
      String cover="";
      if(address.equals(add1))
      {type=“男”;
       cover="0001.jpg";
      }
       else
       {if(address.equals(add2)) 

    type=“女”;
                cover="0002.jpg";
    }else
    {
    type="00";
    cover="0003.jpg";
    }  
       }
    %>提示错误为:type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: 5 in the jsp file: /SBie_deal.jsp
    Syntax error on tokens, ArrayInitializer expected instead
    2:  import="java.sql.*" %>
    3: <jsp:useBean id="connDB" scope="page" class="beans.connDB"/>
    4: <jsp:useBean id="chStr" scope="page" class="beans.chStr"/>
    5: <%
    6:   String address=chStr.convertStr(request.getParameter("address")); ;
    7:   String add1="C:\\my\\001.jpg";
    8:   String add2="C:\\my\\002.jpg";
    An error occurred at line: 5 in the jsp file: /SBie_deal.jsp
    Syntax error on tokens, ArrayInitializer expected instead
    2:  import="java.sql.*" %>
    3: <jsp:useBean id="connDB" scope="page" class="beans.connDB"/>
    4: <jsp:useBean id="chStr" scope="page" class="beans.chStr"/>
    5: <%
    6:   String address=chStr.convertStr(request.getParameter("address")); ;
    7:   String add1="C:\\my\\001.jpg";
    8:   String add2="C:\\my\\002.jpg";
    Stacktrace:
    org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:85)
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
    org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:435)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:298)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:277)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:265)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:564)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:299)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.5.23 logs.这要怎么改!