JavaScript 递归遍历本地文件夹并显示修改时间

作者:拾光

时间:2026-10-23

浏览:644

本文介绍如何使用 JavaScript 结合 ActiveXObject 递归遍历本地文件夹,获取所有文件路径、名称及最后修改时间。该方法依赖 IE 内核浏览器,通过 Scripting.FileSystemObject 对象实现文件列表的读取与展示。

文章目录

JavaScript 递归遍历本地文件夹实现

实现打印本地 temp 文件夹下所有文件及其最后修改时间的功能:


<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 id="mtable" border=1>
  <tbody id="mtbody">
   <tr id="mtr">
    <td>File Path</td>
    <td>File name</td>
    <td>Last Modify</td>
   </tr>
  </tbody>
 </table>
 </div>
</body>
</html>

由于代码中使用了 ActiveXObject 对象,因此该脚本只能在 Internet Explorer 浏览器中运行。

运行效果如下:

JavaScript 递归遍历本地文件夹实现

以上即为 JavaScript 递归遍历本地文件夹的具体实现,如需了解更多相关技术细节,请查阅本站其他文章。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章