Postupy: Hledání podadresářů pomocí specifického vzoru v jazyce Visual Basic
Metoda GetDirectories vrátí kolekci řetězců, které představují názvy cest pro podadresáře v adresáři. Parametr můžete použít wildCards
k určení konkrétního vzoru. Pokud chcete do vyhledávání zahrnout obsah podadresářů, nastavte searchType
parametr na SearchOption.SearchAllSubDirectories
hodnotu .
Pokud nejsou nalezeny žádné adresáře odpovídající zadanému vzoru, vrátí se prázdná kolekce.
Vyhledání podadresářů s konkrétním vzorem
Použijte metodu GetDirectories
a zadejte název a cestu k adresáři, který chcete prohledat. Následující příklad vrátí všechny adresáře v adresářové struktuře, které obsahují slovo "Logs" v jejich názvu, a přidá je do 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
Robustní programování
Následující podmínky mohou způsobit výjimku:
Cesta není platná z jednoho z následujících důvodů: je to řetězec nulové délky, obsahuje pouze prázdné znaky, obsahuje neplatné znaky nebo je to cesta zařízení (začíná řetězcem \\.\) (ArgumentException).
Cesta není platná, protože je
Nothing
(ArgumentNullException).Jeden nebo více zadaných zástupných znaků je
Nothing
, prázdný řetězec nebo obsahuje pouze mezery (ArgumentNullException).directory
neexistuje (DirectoryNotFoundException).directory
odkazuje na existující soubor (IOException).Cesta překračuje maximální délku definovanou systémem (PathTooLongException).
Název souboru nebo složky v cestě obsahuje dvojtečku (:) nebo je v neplatném formátu (NotSupportedException).
Uživatel nemá potřebná oprávnění k zobrazení cesty (SecurityException).
Uživatel nemá potřebná oprávnění (UnauthorizedAccessException).