• jsp遍历文件夹下的文件的代码


    实很简单 也有很多方法 我使用的是一个SERVLET+一个JSP实现的 主要应用FILE类 SERVLET的代码片:

    DisplayFile.java
    //*********************************
    File parentDirectory = null;//当前目录
    ArrayList [] file = null;//存放当前目录中所有的文件
    ArrayList [] directory = null;//存放当前目录中所有的目录
    String [] temp = null;//临时数组 存放当前目录中所有的文件和目录的绝对路径加完整名字的字符串
    File tempFile = null;
    if(request.getParameter("directory")==null)
    {
    parentDirectory = new File("C://temp");//第一次使用SERVLET为访问对象 使用默认目录
    }
    else
    {
    //第二次或者以后访问的时候 使用页面提交的目录为默认目录
    parentDirectory = new File(request.getParameter("directory"));//
    }
    temp = parentDirectory.list();//提取当前目录中所有的文件和目录的绝对路径加完整名字的字符串
    for(int i = 0 ; i<list.length() ; i++ ){
    //进行判断 是目录的放入directory集合中 文件的放入file集合中
    tempFile = new File(temp)
    if(tempFile.isDirectory())
    directory.add(tempFile);
    else
    file.add(tempFile);
    }

    //*********************************
    然后在JSP页面中使用那两个集合显示出目录和文件 目录可以使用超级连接 再次调用上面的Servlet
    "DisplayFile?directory=<%((File)file.get(i)).getName()%>"
    没有环境 一次写成的 难免有问题~~~~
    ------------------------------------------------------------------------------------------

    在JSP中利用session.setAttribute()设置两个String属性,一个currentPath,一个parentPath,
    利用currentPath构造一个File, 利用listFiles()列出这个目录中的所有目录,然后
    for(n <file.listFiles().length;n++) out.print(" <a href="+files[n].getName()+">"+files[n].getName()+" </a> <br>");
    out.print(" <a href="+session.getAttribute("parentPath")+"preview </a> </br>");
    当单击这个超链接时
    setAttribute("parentPath",(String)getAttribute("currentPath"));
    setAttribute("currentPath",被点击的超链接的名字);

    当单击的是"preview"链接时
    setAttribute("parentPath",(new File(parentPath)).getParent());
    setAttribute("currentPath",parentPath);  //这两上parent是getAttribute("parentPath")得来的

    然后再把这个页面刷新一下或 <jsp:forword page="xxx.jsp"/>.这样只利用一个jsp文件就可以实现所有目录的遍历加回朔.关键是,怎么知道当前单击的是哪一个超链接?

    for(n <file.listFiles().length;n++)  out.print(" <a  href=xx.jsp?f="+files[n].getName()+"> "+files[n].getName()+" </a> <br> ");

    <jsp:forword  page="xxx.jsp?fileName="+ <%files[n].getName()%>/>
    这样试下看可以不?

  • 相关阅读:
    python读取配置文件之.ini后缀文件
    Qt界面中打开图片的一个小bug
    C++指针与数组、函数、动态内存分配
    使用VS调试安卓Unity应用
    VS2017调试Unity时遇到的“未指定错误”解决方法记录
    【5】用vector进行直接插入排序
    【4】数独(Sudoku Killer)(深度优先遍历)
    【3】素数环问题(递归、搜索)
    【2】展开字符串(栈、递归)
    【1】简单计算器(栈)
  • 原文地址:https://www.cnblogs.com/cy163/p/1438389.html
Copyright © 2020-2023  润新知