dir_recurse是 php函数,dir_recurse是一个函数么?

bad56da0ed93a57e02c0ea191424b957.png

潇潇雨雨

Dir 函数语法:Dir[(pathname[, attributes])]      两个参数都是可选的,attributes表示文件属性。功能:返回一个文件名、目录名或文件夹名称,它必须与指定的模式或文件属性、或磁盘卷标相匹配。说明:在第一次调用 Dir 函数时,必须指定 pathname,否则会产生错误。如果也指定了文件属性,那么就必须包括 pathname。Dir 会返回匹配 pathname 的第一个文件名。若想得到其它匹配 pathname 的文件名,再一次调用 Dir,且不要使用参数。如果已没有合乎条件的文件,则 Dir 会返回一个零长度字符串 ("")。一旦返回值为零长度字符串,并要再次调用 Dir 时,就必须指定 pathname,否则会产生错误。不必访问到所有匹配当前 pathname 的文件名,就可以改变到一个新的 pathname 上。但是,不能以递归方式来调用 Dir 函数。以 vbDirectory 属性来调用 Dir 不能连续地返回子目录。示例:Debug.Print Dir("F:\TEST.xls")  ’返回"TEST.xls"Debug.Print Dir("F:\*.xls")  ’返回按条件第一个找到的文件名。Debug.Print Dir("F:\*.txt",vbReadOnly) ’返回第一个只读的txt文件以下过程可显示C盘根目录下的所有目录.Sub DirC()MyPath = "c:\"  MyName = dir(MyPath, vbDirectory)     ' 找寻第一项。Do While MyName <> ""      ' 开始循环。    ' 跳过当前的目录及上层目录。    If MyName <> "." And MyName <> ".." Then        ' 使用位比较来确定 MyName 代表一目录。        If (GetAttr(MyPath & MyName) And vbDirectory) = vbDirectory Then            Debug.Print MyName     ' 如果它是一个目录,将其名称显示出来。        End If    End If    MyName = dir    ' 查找下一个目录。LoopEnd Sub以下过程利用递归可以查找目录和子目录下的所有文件。Public Sub FindFile(mPath As String, Optional sFile As String = "")On Error Resume NextDim s As String, sDir() As StringDim i As Long, d As LongIf Right(mPath, 1) <> "\" Then    mPath = mPath & "\"End If'查找目录下的文件s = dir(mPath & sFile, vbArchive + vbDirectory + vbHidden + vbNormal + vbReadOnly + vbSystem)Do While s <> ""   Debug.Print mPath & s   s = dirLoop'查找目录下的子目录s = dir(mPath, vbArchive + vbDirectory + vbHidden + vbNormal + vbReadOnly + vbSystem)Do While s <> ""    If s <> "." And s <> ".." Then        If (GetAttr(mPath & s) And vbDirectory) = vbDirectory Then        d = d + 1        ReDim Preserve sDir(d)        sDir(d) = mPath & s        End If    End If    s = dirLoop'开始递归       For i = 1 To d    FindFile sDir(d) & "\"Next

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值