DirectoryInfo.GetDirectories Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vrátí podadresáře aktuálního adresáře.
Přetížení
| Name | Description |
|---|---|
| GetDirectories() |
Vrátí podadresáře aktuálního adresáře. |
| GetDirectories(String) |
Vrátí pole adresářů v aktuální DirectoryInfo shodě s danými kritérii hledání. |
| GetDirectories(String, EnumerationOptions) |
Vrátí pole adresářů v aktuální DirectoryInfo shodě se zadaným vzorem hledání a možnostmi výčtu. |
| GetDirectories(String, SearchOption) |
Vrátí pole adresářů v aktuálním DirectoryInfo shodě s danými kritérii hledání a pomocí hodnoty určí, zda se mají prohledávat podadresáře. |
GetDirectories()
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
Vrátí podadresáře aktuálního adresáře.
public:
cli::array <System::IO::DirectoryInfo ^> ^ GetDirectories();
public System.IO.DirectoryInfo[] GetDirectories();
member this.GetDirectories : unit -> System.IO.DirectoryInfo[]
Public Function GetDirectories () As DirectoryInfo()
Návraty
Pole DirectoryInfo objektů.
Výjimky
Cesta zapouzdřená v objektu DirectoryInfo je neplatná, například je na nemapované jednotce.
Volající nemá požadované oprávnění.
Volající nemá požadované oprávnění.
Příklady
Následující příklad načte všechny adresáře v kořenovém adresáři a zobrazí názvy adresářů.
using System;
using System.IO;
public class GetDirectoriesTest
{
public static void Main()
{
// Make a reference to a directory.
DirectoryInfo di = new DirectoryInfo("c:\\");
// Get a reference to each directory in that directory.
DirectoryInfo[] diArr = di.GetDirectories();
// Display the names of the directories.
foreach (DirectoryInfo dri in diArr)
Console.WriteLine(dri.Name);
}
}
open System.IO
// Make a reference to a directory.
let di = DirectoryInfo "c:\\"
// Get a reference to each directory in that directory.
let diArr = di.GetDirectories()
// Display the names of the directories.
for dri in diArr do
printfn $"{dri.Name}"
Imports System.IO
Public Class GetDirectoriesTest
Public Shared Sub Main()
' Make a reference to a directory.
Dim di As New DirectoryInfo("c:\")
' Get a reference to each directory in that directory.
Dim diArr As DirectoryInfo() = di.GetDirectories()
' Display the names of the directories.
Dim dri As DirectoryInfo
For Each dri In diArr
Console.WriteLine(dri.Name)
Next dri
End Sub
End Class
Poznámky
Pokud neexistují žádné podadresáře, tato metoda vrátí prázdné pole. Tato metoda není rekurzivní.
Tato metoda předem naplní hodnoty následujících DirectoryInfo vlastností:
Viz také
Platí pro
GetDirectories(String)
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
Vrátí pole adresářů v aktuální DirectoryInfo shodě s danými kritérii hledání.
public:
cli::array <System::IO::DirectoryInfo ^> ^ GetDirectories(System::String ^ searchPattern);
public System.IO.DirectoryInfo[] GetDirectories(string searchPattern);
member this.GetDirectories : string -> System.IO.DirectoryInfo[]
Public Function GetDirectories (searchPattern As String) As DirectoryInfo()
Parametry
- searchPattern
- String
Hledaný řetězec, který se má shodovat s názvy adresářů. Tento parametr může obsahovat kombinaci platných znaků literálu a zástupných znaků (* a ?), ale nepodporuje regulární výrazy.
Návraty
Pole odpovídající typu DirectoryInfosearchPattern.
Výjimky
Verze .NET Framework a .NET Core starší než 2.1: searchPattern obsahuje jeden nebo více neplatných znaků definovaných metodou GetInvalidPathChars() .
searchPattern je null.
Cesta zapouzdřená v objektu DirectoryInfo je neplatná (například je na nemapované jednotce).
Volající nemá požadované oprávnění.
Příklady
Následující příklad spočítá adresáře v cestě, která obsahuje zadané písmeno.
using System;
using System.IO;
class Test
{
public static void Main()
{
try
{
DirectoryInfo di = new DirectoryInfo(@"c:\");
// Get only subdirectories that contain the letter "p."
DirectoryInfo[] dirs = di.GetDirectories("*p*");
Console.WriteLine("The number of directories containing the letter p is {0}.", dirs.Length);
foreach (DirectoryInfo diNext in dirs)
{
Console.WriteLine("The number of files in {0} is {1}", diNext,
diNext.GetFiles().Length);
}
}
catch (Exception e)
{
Console.WriteLine("The process failed: {0}", e.ToString());
}
}
}
open System.IO
try
let di = DirectoryInfo @"c:\"
// Get only subdirectories that contain the letter "p."
let dirs = di.GetDirectories "*p*"
printfn $"The number of directories containing the letter p is {dirs.Length}."
for diNext in dirs do
printfn $"The number of files in {diNext} is {diNext.GetFiles().Length}"
with e ->
printfn $"The process failed: {e}"
Imports System.IO
Public Class Test
Public Shared Sub Main()
' Specify the directories you want to manipulate.
Dim di As DirectoryInfo = New DirectoryInfo("c:\")
Try
'Get only subdirectories that contain the letter "p."
Dim dirs As DirectoryInfo() = di.GetDirectories("*p*")
Console.WriteLine("The number of directories containing the letter p is {0}.", dirs.Length)
Dim diNext As DirectoryInfo
For Each diNext In dirs
Console.WriteLine("The number of files in {0} is {1}", diNext, _
diNext.GetFiles().Length)
Next
Catch e As Exception
Console.WriteLine("The process failed: {0}", e.ToString())
End Try
End Sub
End Class
Poznámky
searchPattern může být kombinací literálů a zástupných znaků, ale nepodporuje regulární výrazy. Následující specifikátory zástupných znaků jsou povoleny v searchPattern.
| Specifikátor zástupných znaků | Shody |
|---|---|
| * (hvězdička) | V této pozici je nula nebo více znaků. |
| ? (otazník) | V této pozici je nula nebo jeden znak. |
Jiné znaky než zástupné znaky jsou literální znaky. Například řetězec "*t" vyhledá všechny názvy končící písmenem "t". " Řetězec searchPattern "s*" vyhledá všechny názvy začínající path písmenem "s".
Tato metoda předem naplní hodnoty následujících DirectoryInfo vlastností:
Viz také
Platí pro
GetDirectories(String, EnumerationOptions)
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
Vrátí pole adresářů v aktuální DirectoryInfo shodě se zadaným vzorem hledání a možnostmi výčtu.
public:
cli::array <System::IO::DirectoryInfo ^> ^ GetDirectories(System::String ^ searchPattern, System::IO::EnumerationOptions ^ enumerationOptions);
public System.IO.DirectoryInfo[] GetDirectories(string searchPattern, System.IO.EnumerationOptions enumerationOptions);
member this.GetDirectories : string * System.IO.EnumerationOptions -> System.IO.DirectoryInfo[]
Public Function GetDirectories (searchPattern As String, enumerationOptions As EnumerationOptions) As DirectoryInfo()
Parametry
- searchPattern
- String
Hledaný řetězec, který se má shodovat s názvy adresářů. Tento parametr může obsahovat kombinaci platných znaků literálu a zástupných znaků (* a ?), ale nepodporuje regulární výrazy.
- enumerationOptions
- EnumerationOptions
Objekt, který popisuje konfiguraci vyhledávání a výčtu, která se má použít.
Návraty
Pole porovnávání DirectoryInfo typů searchPattern a enumerationOptions.
Výjimky
Verze .NET Framework a .NET Core starší než 2.1: searchPattern obsahuje jeden nebo více neplatných znaků definovaných metodou GetInvalidPathChars() .
searchPattern je null.
Cesta zapouzdřená v objektu DirectoryInfo je neplatná (například je na nemapované jednotce).
Volající nemá požadované oprávnění.
Poznámky
searchPattern může být kombinací literálů a zástupných znaků, ale nepodporuje regulární výrazy. Následující specifikátory zástupných znaků jsou povoleny v searchPattern.
| Specifikátor zástupných znaků | Shody |
|---|---|
| * (hvězdička) | V této pozici je nula nebo více znaků. |
| ? (otazník) | V této pozici je nula nebo jeden znak. |
Jiné znaky než zástupné znaky jsou literální znaky. Například řetězec "*t" vyhledá všechny názvy končící písmenem "t". " Řetězec searchPattern "s*" vyhledá všechny názvy začínající path písmenem "s".
Tato metoda předem naplní hodnoty následujících DirectoryInfo vlastností:
Platí pro
GetDirectories(String, SearchOption)
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
- Zdroj:
- DirectoryInfo.cs
Vrátí pole adresářů v aktuálním DirectoryInfo shodě s danými kritérii hledání a pomocí hodnoty určí, zda se mají prohledávat podadresáře.
public:
cli::array <System::IO::DirectoryInfo ^> ^ GetDirectories(System::String ^ searchPattern, System::IO::SearchOption searchOption);
public System.IO.DirectoryInfo[] GetDirectories(string searchPattern, System.IO.SearchOption searchOption);
member this.GetDirectories : string * System.IO.SearchOption -> System.IO.DirectoryInfo[]
Public Function GetDirectories (searchPattern As String, searchOption As SearchOption) As DirectoryInfo()
Parametry
- searchPattern
- String
Hledaný řetězec, který se má shodovat s názvy adresářů. Tento parametr může obsahovat kombinaci platných znaků literálu a zástupných znaků (* a ?), ale nepodporuje regulární výrazy.
- searchOption
- SearchOption
Jedna z hodnot výčtu, která určuje, zda by operace hledání měla obsahovat pouze aktuální adresář nebo všechny podadresáře.
Návraty
Pole odpovídající typu DirectoryInfosearchPattern.
Výjimky
Verze .NET Framework a .NET Core starší než 2.1: searchPattern obsahuje jeden nebo více neplatných znaků definovaných metodou GetInvalidPathChars() .
searchPattern je null.
searchOption není platná SearchOption hodnota.
Cesta zapouzdřená v objektu DirectoryInfo je neplatná (například je na nemapované jednotce).
Volající nemá požadované oprávnění.
Příklady
Následující příklad uvádí všechny adresáře a soubory, které začínají písmenem "c" v "c:\".
using System;
using System.IO;
class App
{
public static void Main()
{
// Specify the directory you want to manipulate.
string path = @"c:\";
string searchPattern = "c*";
DirectoryInfo di = new DirectoryInfo(path);
DirectoryInfo[] directories =
di.GetDirectories(searchPattern, SearchOption.TopDirectoryOnly);
FileInfo[] files =
di.GetFiles(searchPattern, SearchOption.TopDirectoryOnly);
Console.WriteLine(
"Directories that begin with the letter \"c\" in {0}", path);
foreach (DirectoryInfo dir in directories)
{
Console.WriteLine(
"{0,-25} {1,25}", dir.FullName, dir.LastWriteTime);
}
Console.WriteLine();
Console.WriteLine(
"Files that begin with the letter \"c\" in {0}", path);
foreach (FileInfo file in files)
{
Console.WriteLine(
"{0,-25} {1,25}", file.Name, file.LastWriteTime);
}
} // Main()
} // App()
open System.IO
// Specify the directory you want to manipulate.
let path = @"c:\"
let searchPattern = "c*"
let di = DirectoryInfo path
let directories = di.GetDirectories(searchPattern, SearchOption.TopDirectoryOnly)
let files = di.GetFiles(searchPattern, SearchOption.TopDirectoryOnly)
printfn $"Directories that begin with the letter \"c\" in {path}"
for dir in directories do
printfn $"{dir.FullName,-25} {dir.LastWriteTime,25}"
printfn $"\nFiles that begin with the letter \"c\" in {path}"
for file in files do
printfn $"{file.Name,-25} {file.LastWriteTime,25}"
Imports System.IO
Class App
Public Shared Sub Main()
' Specify the directory you want to manipulate.
Dim path As String = "c:\\"
Dim searchPattern As String = "c*"
Dim di As DirectoryInfo = New DirectoryInfo(path)
Dim directories() As DirectoryInfo = _
di.GetDirectories(searchPattern, SearchOption.TopDirectoryOnly)
Dim files() As FileInfo = _
di.GetFiles(searchPattern, SearchOption.TopDirectoryOnly)
Console.WriteLine( _
"Directories that begin with the letter 'c' in {0}", path)
Dim dir As DirectoryInfo
For Each dir In directories
Console.WriteLine( _
"{0,-25} {1,25}", dir.FullName, dir.LastWriteTime)
Next dir
Console.WriteLine()
Console.WriteLine( _
"Files that begin with the letter 'c' in {0}", path)
Dim file As FileInfo
For Each file In files
Console.WriteLine( _
"{0,-25} {1,25}", file.Name, file.LastWriteTime)
Next file
End Sub
End Class
Poznámky
searchPattern může být kombinací literálů a zástupných znaků, ale nepodporuje regulární výrazy. Následující specifikátory zástupných znaků jsou povoleny v searchPattern.
| Specifikátor zástupných znaků | Shody |
|---|---|
| * (hvězdička) | V této pozici je nula nebo více znaků. |
| ? (otazník) | V této pozici je nula nebo jeden znak. |
Jiné znaky než zástupné znaky jsou literální znaky. Například řetězec "*t" vyhledá všechny názvy končící písmenem "t". " Řetězec searchPattern "s*" vyhledá všechny názvy začínající path písmenem "s".
Pokud neexistují žádné podadresáře nebo žádné podadresáře neodpovídají parametru searchPattern , tato metoda vrátí prázdné pole.
Tato metoda předem naplní hodnoty následujících DirectoryInfo vlastností: