当前位置 博文首页 > Javascript如何递归遍历本地文件夹

    Javascript如何递归遍历本地文件夹

    作者:Jerry Wang 时间:2021-08-21 19:06

    打印本地temp folder所有的文件及最后修改时间:

    <html>
    <head>
    <script language="javascript">
    var s = "";
    var result = [];
    function FileInfo(path, name,time) {
     this.path = path;
     this.name = name;
     this.time = time;
    }
    function showFolderFileList(folderspec)
    {
      var fso,f,fc,name;
      var url,str,file,filename;
      fso = new ActiveXObject("Scripting.FileSystemObject");
      f = fso.GetFolder(folderspec);
      fc = new Enumerator( f.files );
      for (; !fc.atEnd(); fc.moveNext( ) ) {
       filename = fso.GetFileName( fc.item( ) );
       var file = fso.getFile(folderspec + "\\" + filename);
       var fileInfo = new FileInfo(folderspec, filename,file.DateLastModified);
       result.push(fileInfo);
      }
      var Collection = new Enumerator(f.SubFolders); 
     
        for (Collection.moveFirst(); !Collection.atEnd(); Collection.moveNext()) { 
        var Obj = Collection.item(); 
        showFolderFileList(Obj.Path);
      } 
      return result;
    }
    function display_result(result)
    {
      var body = document.getElementById("mtbody");
      var size = result.length;
      var tr = document.getElementById("mtr");
      for( var i =0; i < size; i++ ) {
       var newTr = tr.cloneNode(true);
       var children = newTr.children;
       for( var j = 0 ; j < children.length; j++) {
        var item = children.item(j);
        switch(j) {
         case 0:
          item.innerHTML = result[i].path;
          break;
         case 1:
          item.innerHTML = result[i].name;
          break;
         case 2:
          item.innerHTML = result[i].time;
        }
       }
       body.appendChild(newTr);
      }
    }
    function run(i, folder) {
     var list_result = showFolderFileList('C:\\temp');
     display_result(list_result);
    }
    </script>
    </head>
    <body onload = "run('c:\\temp')">
     <div id ="table">
       <table  border=1>
      <tbody >
       <tr >
        <td>File Path</td>
        <td>File name</td>
        <td>Last Modify</td>
       </tr>
      </tbody>
     </table>
     </div>
    </body>
    </html>

    因为使用了ActiveXobject,只能使用IE打开。

    效果如下:

    jsjbwy
    下一篇:没有了