DirectoryInfo.GetDirectories Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Retourneert de submappen van de huidige map.
Overloads
| Name | Description |
|---|---|
| GetDirectories() |
Retourneert de submappen van de huidige map. |
| GetDirectories(String) |
Retourneert een matrix met mappen in de huidige DirectoryInfo overeenkomst met de opgegeven zoekcriteria. |
| GetDirectories(String, EnumerationOptions) |
Retourneert een matrix met mappen in de huidige DirectoryInfo overeenkomst met het opgegeven zoekpatroon en de opsommingsopties. |
| GetDirectories(String, SearchOption) |
Retourneert een matrix met mappen in de huidige DirectoryInfo overeenkomst met de opgegeven zoekcriteria en het gebruik van een waarde om te bepalen of submappen moeten worden gezocht. |
GetDirectories()
Retourneert de submappen van de huidige map.
public:
cli::array <System::IO::DirectoryInfo ^> ^ GetDirectories();
public System.IO.DirectoryInfo[] GetDirectories();
member this.GetDirectories : unit -> System.IO.DirectoryInfo[]
Public Function GetDirectories () As DirectoryInfo()
Retouren
Een matrix met DirectoryInfo objecten.
Uitzonderingen
Het pad dat in het DirectoryInfo object is ingekapseld, is ongeldig, zoals op een niet-toegewezen station.
De beller heeft niet de vereiste machtiging.
De beller heeft niet de vereiste machtiging.
Voorbeelden
In het volgende voorbeeld worden alle mappen in de hoofdmap opgehaald en worden de mapnamen weergegeven.
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
Opmerkingen
Als er geen submappen zijn, retourneert deze methode een lege matrix. Deze methode is niet recursief.
Met deze methode worden de waarden van de volgende DirectoryInfo eigenschappen vooraf ingevuld:
Zie ook
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven
Van toepassing op
GetDirectories(String)
Retourneert een matrix met mappen in de huidige DirectoryInfo overeenkomst met de opgegeven zoekcriteria.
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()
Parameters
- searchPattern
- String
De zoekreeks die overeenkomt met de namen van mappen. Deze parameter kan een combinatie van geldig letterlijke tekens en jokertekens (* en ?) bevatten, maar biedt geen ondersteuning voor reguliere expressies.
Retouren
Een matrix van het type DirectoryInfo die overeenkomt searchPattern.
Uitzonderingen
.NET Framework- en .NET Core-versies ouder dan 2.1: searchPattern bevat een of meer ongeldige tekens die zijn gedefinieerd door de methode GetInvalidPathChars().
searchPattern is null.
Het pad dat in het DirectoryInfo object is ingekapseld, is ongeldig (bijvoorbeeld op een niet-toegewezen station).
De beller heeft niet de vereiste machtiging.
Voorbeelden
In het volgende voorbeeld worden de mappen geteld in een pad dat de opgegeven letter bevat.
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
Opmerkingen
searchPattern kan een combinatie zijn van letterlijke tekens en jokertekens, maar biedt geen ondersteuning voor reguliere expressies. De volgende jokertekenaanduidingen zijn toegestaan in searchPattern.
| Jokertekenaanduiding | Overeenkomsten |
|---|---|
| * (sterretje) | Nul of meer tekens op die positie. |
| ? (vraagteken) | Nul of één teken op die positie. |
Andere tekens dan het jokerteken zijn letterlijke tekens. Met de tekenreeks '*t' wordt bijvoorbeeld gezocht naar alle namen die eindigen op de letter 't'. ". De searchPattern tekenreeks 's*' zoekt naar alle namen in path het begin met de letter 's'.
Met deze methode worden de waarden van de volgende DirectoryInfo eigenschappen vooraf ingevuld:
Zie ook
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven
Van toepassing op
GetDirectories(String, EnumerationOptions)
Retourneert een matrix met mappen in de huidige DirectoryInfo overeenkomst met het opgegeven zoekpatroon en de opsommingsopties.
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()
Parameters
- searchPattern
- String
De zoekreeks die overeenkomt met de namen van mappen. Deze parameter kan een combinatie van geldig letterlijke tekens en jokertekens (* en ?) bevatten, maar biedt geen ondersteuning voor reguliere expressies.
- enumerationOptions
- EnumerationOptions
Een object dat de zoek- en opsommingsconfiguratie beschrijft die moet worden gebruikt.
Retouren
Een matrix van het type DirectoryInfo overeenkomst searchPattern en enumerationOptions.
Uitzonderingen
.NET Framework- en .NET Core-versies ouder dan 2.1: searchPattern bevat een of meer ongeldige tekens die zijn gedefinieerd door de methode GetInvalidPathChars().
searchPattern is null.
Het pad dat in het DirectoryInfo object is ingekapseld, is ongeldig (bijvoorbeeld op een niet-toegewezen station).
De beller heeft niet de vereiste machtiging.
Opmerkingen
searchPattern kan een combinatie zijn van letterlijke tekens en jokertekens, maar biedt geen ondersteuning voor reguliere expressies. De volgende jokertekenaanduidingen zijn toegestaan in searchPattern.
| Jokertekenaanduiding | Overeenkomsten |
|---|---|
| * (sterretje) | Nul of meer tekens op die positie. |
| ? (vraagteken) | Nul of één teken op die positie. |
Andere tekens dan het jokerteken zijn letterlijke tekens. Met de tekenreeks '*t' wordt bijvoorbeeld gezocht naar alle namen die eindigen op de letter 't'. ". De searchPattern tekenreeks 's*' zoekt naar alle namen in path het begin met de letter 's'.
Met deze methode worden de waarden van de volgende DirectoryInfo eigenschappen vooraf ingevuld:
Van toepassing op
GetDirectories(String, SearchOption)
Retourneert een matrix met mappen in de huidige DirectoryInfo overeenkomst met de opgegeven zoekcriteria en het gebruik van een waarde om te bepalen of submappen moeten worden gezocht.
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()
Parameters
- searchPattern
- String
De zoekreeks die overeenkomt met de namen van mappen. Deze parameter kan een combinatie van geldig letterlijke tekens en jokertekens (* en ?) bevatten, maar biedt geen ondersteuning voor reguliere expressies.
- searchOption
- SearchOption
Een van de opsommingswaarden die aangeeft of de zoekbewerking alleen de huidige map of alle submappen moet bevatten.
Retouren
Een matrix van het type DirectoryInfo die overeenkomt searchPattern.
Uitzonderingen
.NET Framework- en .NET Core-versies ouder dan 2.1: searchPattern bevat een of meer ongeldige tekens die zijn gedefinieerd door de methode GetInvalidPathChars().
searchPattern is null.
searchOption is geen geldige SearchOption waarde.
Het pad dat in het DirectoryInfo object is ingekapseld, is ongeldig (bijvoorbeeld op een niet-toegewezen station).
De beller heeft niet de vereiste machtiging.
Voorbeelden
In het volgende voorbeeld worden alle mappen en bestanden weergegeven die beginnen met de letter 'c' in '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
Opmerkingen
searchPattern kan een combinatie zijn van letterlijke tekens en jokertekens, maar biedt geen ondersteuning voor reguliere expressies. De volgende jokertekenaanduidingen zijn toegestaan in searchPattern.
| Jokertekenaanduiding | Overeenkomsten |
|---|---|
| * (sterretje) | Nul of meer tekens op die positie. |
| ? (vraagteken) | Nul of één teken op die positie. |
Andere tekens dan het jokerteken zijn letterlijke tekens. Met de tekenreeks '*t' wordt bijvoorbeeld gezocht naar alle namen die eindigen op de letter 't'. ". De searchPattern tekenreeks 's*' zoekt naar alle namen in path het begin met de letter 's'.
Als er geen submappen zijn of geen submappen overeenkomen met de searchPattern parameter, retourneert deze methode een lege matrix.
Met deze methode worden de waarden van de volgende DirectoryInfo eigenschappen vooraf ingevuld:
Zie ook
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven