Procedura: cercare sottodirectory con un modello specifico in Visual Basic
Il metodo GetDirectories restituisce una raccolta di stringhe di sola lettura che rappresentano i nomi di percorso per le sottodirectory di una directory. È possibile usare il parametro wildCards
per specificare un criterio specifico. Se si vogliono includere i contenuti delle sottodirectory nella ricerca, impostare il parametro searchType
su SearchOption.SearchAllSubDirectories
.
Se non vengono trovate directory corrispondenti al criterio specificato, verrà restituita una raccolta vuota.
Per trovare sottodirectory con un criterio specifico
Usare il metodo GetDirectories
, specificando il nome e percorso della directory che si vuole cercare. L'esempio seguente restituisce tutte le directory nella struttura di directory che contengono la parola "Logs" nel nome e li aggiunge a ListBox1
.
For Each foundDirectory As String In
My.Computer.FileSystem.GetDirectories(
My.Computer.FileSystem.SpecialDirectories.MyDocuments,
FileIO.SearchOption.SearchTopLevelOnly,
"*Logs*")
ListBox1.Items.Add(foundDirectory)
Next
Programmazione efficiente
Le seguenti condizioni possono generare un'eccezione:
Il percorso non è valido per uno dei motivi seguenti: è una stringa di lunghezza zero, contiene solo spazi vuoti, contiene caratteri non validi o è il percorso di un dispositivo (inizia con \\.\) (ArgumentException).
Il percorso non è valido in quanto è
Nothing
(ArgumentNullException).Uno o più caratteri jolly specificati è
Nothing
, una stringa vuota o contiene solo spazi (ArgumentNullException).directory
non esiste (DirectoryNotFoundException).directory
punta a un file esistente (IOException).La lunghezza del percorso supera la lunghezza massima definita dal sistema (PathTooLongException).
Il nome di un file o di una cartella nel percorso contiene i due punti (:) o ha un formato non valido (NotSupportedException).
L'utente non dispone delle autorizzazioni necessarie per visualizzare il percorso (SecurityException).
L'utente non dispone delle autorizzazioni necessarie (UnauthorizedAccessException).