簡體   English   中英

搜索文件夾和所有子文件夾中的特定文件類型

[英]search folder and all sub folders for a specific file type

我使用以下代碼將所有.txt文件存儲在數組的特定路徑中。

Dim fileEntries As String() = Directory.GetFiles(folderDIR, "*.txt", SearchOption.AllDirectories)

folderDIR是我要搜索的文件夾的目錄。但是這種方法似乎不起作用。 它在當前位置接受所有.txt文件,但不考慮子文件夾。

誰能告訴我我在哪里做錯了? 還是有更好的方法來做到這一點?

謝謝。

http://msdn.microsoft.com/zh-CN/library/07wt70x2(v=vs.110).aspx

' For Directory.GetFiles and Directory.GetDirectories 
' For File.Exists, Directory.Exists  
    Imports System
Imports System.IO
Imports System.Collections

Public Class RecursiveFileProcessor

    Public Overloads Shared Sub Main(ByVal args() As String)
        Dim path As String 
        For Each path In args
            If File.Exists(path) Then 
                ' This path is a file.
                ProcessFile(path)
            Else 
                If Directory.Exists(path) Then 
                    ' This path is a directory.
                    ProcessDirectory(path)
                Else
                    Console.WriteLine("{0} is not a valid file or directory.", path)
                End If 
            End If 
        Next path
    End Sub 'Main


    ' Process all files in the directory passed in, recurse on any directories  
    ' that are found, and process the files they contain. 
    Public Shared Sub ProcessDirectory(ByVal targetDirectory As String)
        Dim fileEntries As String() = Directory.GetFiles(targetDirectory)
        ' Process the list of files found in the directory. 
        Dim fileName As String 
        For Each fileName In fileEntries
            ProcessFile(fileName)

        Next fileName
        Dim subdirectoryEntries As String() = Directory.GetDirectories(targetDirectory)
        ' Recurse into subdirectories of this directory. 
        Dim subdirectory As String 
        For Each subdirectory In subdirectoryEntries
            ProcessDirectory(subdirectory)
        Next subdirectory

    End Sub 'ProcessDirectory

    ' Insert logic for processing found files here. 
    Public Shared Sub ProcessFile(ByVal path As String)
        Console.WriteLine("Processed file '{0}'.", path)
    End Sub 'ProcessFile
End Class 'RecursiveFileProcessor

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM