如何枚举文件?把结果放到字符数组里~请附代码~~
请告诉我吧~~
用什么Api~
咋用~~~~~~~~~~~~~~~~~~~
请了!!!!!!!!!11

解决方案 »

  1.   

    Public Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long根据文件名查找文件返回
    Long,如执行成功,返回一个搜索句柄。如果出错,返回一个INVALID_HANDLE_VALUE常数,一旦不再需要,应该用FindClose函数关闭这个句柄
    参数
    lpFileName -----  String,欲搜索的文件名。可包含通配符,并可包含一个路径或相对路径名
    lpFindFileData -  WIN32_FIND_DATA,这个结构用于装载与找到的文件有关的信息。该结构可用于后续的搜索由这个函数返回的句柄可以作为一个参数用于FindNextFile函数。这样一来,就可以方便的枚举出与lpFileName参数指定的文件名相符的所有文件Public Declare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" (ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long根据调用FindFirstFile函数时指定的一个文件名查找下一个文件
    返回
    Long,非零表示成功,零表示失败。如不再有与指定条件相符的文件,会将GetLastError设置成ERROR_NO_MORE_FILES
    参数
    hFindFile ------  Long,由FindFirstFile函数返回的搜索句柄
    lpFindFileData -  WIN32_FIND_DATA,这个结构用于装载与找到的文件有关的信息
      

  2.   

    sorry,搞错了,这个是搜索文件,
    但是好像没有枚举文件的API~
      

  3.   

    加入集合似乎更合理!
    简单的用Dir就可以。
    我不喜欢直接给源码,会封堵你的思路的。
      

  4.   

    '模 块 名:GetFileList
    '功    能:返回指定文件夹的所有文件名列表
    '返 回 值:成功/失败:True/False
    '参    数:GetFileList(指定文件夹路径, 文件数组,返回的文件类型)
    '引    用:无
    '外部函数:无
    '内部变量:[fName=文件名][i=用于循环]
    '调用方法:
    '++++++++++++++++++++++++++++++++++++
    '   Dim FileName() As String, i As Long
    '   GetFileList "c:\", FileName
    '   For i = 0 To UBound(FileName)
    '       Debug.Print FileName(i)
    '   Next i
    '++++++++++++++++++++++++++++++++++++
    Function GetFileList(ByVal Path As String, ByRef Filename() As String, Optional fExp As String = "*.*") As Boolean
        Dim fName As String, i As Long
        If right$(Path, 1) <> "\" Then Path = Path & "\"
        fName = Dir$(Path & fExp)
        i = 0
        Do While fName <> ""
            ReDim Preserve Filename(i) As String
            Filename(i) = fName
            fName = Dir$
            i = i + 1
        Loop
        If i <> 0 Then
            ReDim Preserve Filename(i - 1) As String
            GetFileList = True
        Else
            GetFileList = False
        End If
    End Function
      

  5.   

    '模 块 名:GetFolderList
    '功    能:返回指定文件夹的所有文件夹列表
    '返 回 值:成功/失败:True/False
    '参    数:GetFileList(指定文件夹路径, 文件夹数组)
    '引    用:无
    '外部函数:无
    '内部变量:[SearchDir=路径][FoundDir=文件夹名][i=用于循环]
    '调用方法:
    '++++++++++++++++++++++++++++++++++++
    '   Dim FolderName() As String, i As Long
    '   GetFolderList "C:\", FolderName
    '   For i = LBound(FolderName) To UBound(FolderName)
    '       Debug.Print FolderName(i)
    '   Next i
    '++++++++++++++++++++++++++++++++++++
    Public Function GetFolderList(ByVal Path As String, ByRef FolderName() As String) As Boolean
        Dim SearchDir As String
        Dim FoundDir As String
        Dim i As Long
        If right(Path, 1) <> "\" Then Path = Path & "\"
        SearchDir = Path & "*."
        FoundDir = Dir(SearchDir, vbDirectory)
        While FoundDir <> ""
            If Not FoundDir = "." Or FoundDir = ".." Then
                ReDim Preserve FolderName(i) As String
                FolderName(i) = FoundDir
            End If
            FoundDir = Dir()
            i = i + 1
        Wend
    End Function
      

  6.   

    石欠dongge2000(※秋日私语※:非[版务].灌!) ,
    楼主说要API~
      

  7.   

    o ~~
    可以不用API~
    谢谢!