How to: Get the Collection of Files in a Directory in Visual Basic
The overloads of the FileSystem.GetFiles method return a read-only collection of strings representing the names of the files within a directory:
Use the GetFiles(String) overload for a simple file search in a specified directory, without searching subdirectories.
Use the GetFiles(String, SearchOption, array<String[]) overload to specify additional options for your search. You can use the wildCards parameter to specify a search pattern. To include subdirectories in the search, set the searchType parameter to SearchOption.SearchAllSubDirectories.
An empty collection is returned if no files matching the specified pattern are found.
To list files in a directory
Use one of the FileSystem.GetFiles method overloads, supplying the name and path of the directory to search in the directory parameter. The following example returns all files in the directory and adds them to ListBox1.
For Each foundFile As String In My.Computer.FileSystem.GetFiles( My.Computer.FileSystem.SpecialDirectories.MyDocuments) listBox1.Items.Add(foundFile) Next
Robust Programming
The following conditions may cause an exception:
The path is not valid for one of the following reasons: it is a zero-length string, it contains only white space, it contains invalid characters, or it is a device path (starts with \\.\) (ArgumentException).
The path is not valid because it is Nothing (ArgumentNullException).
directory does not exist (DirectoryNotFoundException).
directory points to an existing file (IOException).
The path exceeds the system-defined maximum length (PathTooLongException).
A file or directory name in the path contains a colon (:) or is in an invalid format (NotSupportedException).
The user lacks necessary permissions to view the path (SecurityException).
The user lacks necessary permissions (UnauthorizedAccessException).
See Also
Tasks
How to: Find Files with a Specific Pattern in Visual Basic
How to: Find Subdirectories with a Specific Pattern in Visual Basic