获得指定目录下的所有文件的列表包括子目录下的文件——VB2005

在实际的运用中,我们有时要求能获得一个目录下的所有文件列表,包括子目录下的文件

VB2005中有函数My.Computer.FileSystem.GetFiles(Path)。其效用是获得目录下所有文件列表,但是不包括子目录下的文件My.Computer.FileSystem.GetDirectories(Path)这个函数效用是获得目录下的一级子目录的列表,不包含子目录下的目录列表。

将这两个函数灵活运用,就能达到标题所要求的效果。现将代码赋予其后。

函数GetAllFile

作用:获得制定目录下的文件列表,包括子目录下的文件

参数:Path;制定的目录名

返回值:字符串数组,目录列表

Public Shared Function GetAllFile(ByVal Path As String) As String()

Dim tS() As String

Dim tC As Collections.ObjectModel.ReadOnlyCollection(Of String) _

= My.Computer.FileSystem.GetFiles(Path)

ReDim tS(tC.Count - 1)

tC.copyTo(tS,0)

Dim tS1() As String

tP As String

j As Integer

For Each tP In My.Computer.FileSystem.GetDirectories(Path)

tS1 = GetAllFile(tP)

If tS1.Length > 0 Then

If tS.Length = 0 Then

ReDim tS(tS1.GetUpperBound(0))

tS1.copyTo(tS,sans-serif; mso-fareast-font-family: 新宋体; mso-font-kerning: 0pt; mso-no-proof: yes;" lang="EN-US"> Else

j = tS.GetUpperBound(0)

ReDim Preserve tS(j + tS1.Length)

End If

Next

Return tS

End Function

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...