在servlet中传递一个参数到jsp文件,
String tempfilename="upload\\pic\\"+1234.jpg;
request.getSession().setAttribute("uploadfilename",tempfilename);
然后在jsp文件接收这个参数,接收到的总是"upload\pic1234.jpg",pic与1234.jpg之间总是差一个\,应该怎样写才能出现这个\

解决方案 »

  1.   

    upload\\pic\\"+1234.jpg
    upload/pic/"+1234.jpg
    都是对的, \\这个是转义字符
      

  2.   

    那为何弹出的显示结果pic与1234之间没有\
      

  3.   

    此路径存入数据库就显示为upload\pic1234.jpg,就是少一个\
      

  4.   

    文件分隔符用File.separator
    建议不要用/或\
      

  5.   

    是这样写吗,"upload"+File.separator+"pic"+File.separator+"1234.jpg",结果还是一样啊。
      

  6.   


    File.serparator只是区分系统而已,实质还是斜杠,只是在windows下它自动为\,在unix下自动为/楼主把你jsp代码晒下,那里你是怎么获取这个变量的
      

  7.   

    是一个上传文件的servlet,上传文件的路径和文件名都是正确写入的,year开始的代码是文件名,没有问题
    f.write(new File(path+"\\upload\\pic\\" +year+month+day+hour+minute+second+ fileext));
    String tempfilename="upload\\pic\\"+year+month+day+hour+minute+second+ fileext;
    request.getSession().setAttribute("uploadfilename",tempfilename);RequestDispatcher requestDispatcher=request.getRequestDispatcher("admin/upload_showfile.jsp");//页面跳转
    requestDispatcher.forward(request, response);在jsp文件中获取:
    <input type ="text" name="text1" id="text" value="<%=request.getSession().getAttribute("uploadfilename")%>" size="40" />
      

  8.   

    不要用\\了,
    就用upload/pic/就好了,也不会错