遍历指定目录下的所有文件夹和文件

1.遍历指定目录下的所有文件夹和文件并输出

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script>
function searchFiles(obj){
    var fso = new ActiveXObject("Scripting.FileSystemObject");
    var f = fso.GetFolder(document.all.fixfolder.value);
    var fc = new Enumerator(f.files);
    var s = "";
    for (; !fc.atEnd(); fc.moveNext())
        {
            s += fc.item();
            s += "<br/>";
        }
        fk = new Enumerator(f.SubFolders);
        for (; !fk.atEnd(); fk.moveNext())
        {
        s += fk.item();
        s += "<br/>";
        }
        textarea.innerHTML = s;
}
</script>
</head>
<body bgcolor="#FFFFFF">
指定文件夹:<input type="text" name="fixfolder" value="D:\TDDOWNLOAD">
<input type="button" value ="搜索" οnclick="searchFiles(this)">
<table >
<tr>
<td id = "textarea">
</td>
</tr>
</table>
</body>
</html>

 

2.遍历指定目录下的所有文件夹和文件并输出指定的文件类型

<script type="text/jscript">
  var Unity3dList = "";
  function GetUnity3dlist() {
     var txt;
     var stream = "";
     var fso = new ActiveXObject("Scripting.FileSystemObject");
     var fldr = fso.GetFolder("D:\\add");
alert(fldr);
     fc = new Enumerator(fldr.files);
     for (; !fc.atEnd(); fc.moveNext())//枚举所有文件
     {
         s = fc.item();   //取文件对象 
         alert(s.type);
         if (s.type == "HTML 文档" || s.type == "360 se HTML Document") {   //判断是否是“HTML 文档” 和“360 se HTML Document”
             f = fso.GetFile(s);
             ts = f.OpenAsTextStream(1, -2);
             txt = ts.ReadAll();   //读全文
             ts.Close();
             txttxt = txt.toUpperCase();

             titl = s.name;
             start = txt.indexOf("<TITLE>", 0);
             if (start != -1) {
                 start += 7;
                 end = txt.indexOf("</TITLE>", start);
                 if (end != -1)
                     titl = txt.substr(start, end - start);
             }
             //document.write("<a href=\"" + s + "\">" + titl + "</a><br>");
             Unity3dList += titl + "|";

               }
         document.write(Unity3dList);
     }
}

  function ReadUnity3d() {
     var stream = Unity3dList;
     var arr = new Array();
     arr = stream.split("|");
     for (var i = 0; i < arr.length-1; i++) {
          alert(arr[i].toString());
  }
}
</script>

<input type="button" value ="搜索" οnclick="GetUnity3dlist()">

可以使用os模块中的os.walk()函数来遍历指定目录下的文件夹文件,然后将每个文件夹文件封装成一个对象,并将所有对象存储在一个列表中。 以下是示例代码: ```python import os class FileObject: def __init__(self, name, path, is_directory): self.name = name self.path = path self.is_directory = is_directory def __str__(self): return f"{self.path}/{self.name}" def traverse_directory(dir_path): file_objects = [] for root, dirs, files in os.walk(dir_path): for name in files: file_path = os.path.join(root, name) file_objects.append(FileObject(name, file_path, False)) for name in dirs: dir_path = os.path.join(root, name) file_objects.append(FileObject(name, dir_path, True)) return file_objects if __name__ == '__main__': dir_path = "./example_dir" file_objects = traverse_directory(dir_path) for file_object in file_objects: print(file_object) ``` 在上面的代码中,`FileObject`类表示一个文件夹文件对象,包括对象名字(name)、对象路径(path)、是否为文件夹(is_directory)三个属性。`traverse_directory()`函数接受一个目录路径作为参数,使用`os.walk()`函数遍历目录下的所有文件夹文件,并将它们封装成`FileObject`对象,存储在`file_objects`列表中。最后,遍历`file_objects`列表并打印每个对象的路径信息。 执行上面的代码,输出类似以下内容: ``` ./example_dir/dir2 ./example_dir/file1.txt ./example_dir/dir1 ./example_dir/dir1/file2.txt ./example_dir/dir1/subdir ./example_dir/dir1/subdir/file3.txt ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值