DirectoryInfo.GetDirectories Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Devuelve los subdirectorios del directorio actual.
Sobrecargas
GetDirectories() |
Devuelve los subdirectorios del directorio actual. |
GetDirectories(String) |
Devuelve una matriz de directorios en el DirectoryInfo actual que coinciden con los criterios de búsqueda especificados. |
GetDirectories(String, EnumerationOptions) |
Devuelve una matriz de directorios en el objeto DirectoryInfo actual que coinciden con el patrón de búsqueda y las opciones de enumeración especificados. |
GetDirectories(String, SearchOption) |
Devuelve una matriz de directorios en el DirectoryInfo actual aplicando los criterios de búsqueda dados y utilizando un valor para determinar si se busca en los subdirectorios. |
GetDirectories()
- Source:
- DirectoryInfo.cs
- Source:
- DirectoryInfo.cs
- Source:
- DirectoryInfo.cs
Devuelve los subdirectorios del directorio actual.
public:
cli::array <System::IO::DirectoryInfo ^> ^ GetDirectories();
public System.IO.DirectoryInfo[] GetDirectories ();
member this.GetDirectories : unit -> System.IO.DirectoryInfo[]
Public Function GetDirectories () As DirectoryInfo()
Devoluciones
Matriz de objetos DirectoryInfo.
Excepciones
La ruta de acceso encapsulada en el objeto DirectoryInfo no es válida como, por ejemplo, una ruta de una unidad no asignada.
El llamador no dispone del permiso requerido.
El llamador no dispone del permiso requerido.
Ejemplos
En el ejemplo siguiente se recuperan todos los directorios del directorio raíz y se muestran los nombres de directorio.
using namespace System;
using namespace System::IO;
int main()
{
// Make a reference to a directory.
DirectoryInfo^ di = gcnew DirectoryInfo( "c:\\" );
// Get a reference to each directory in that directory.
array<DirectoryInfo^>^diArr = di->GetDirectories();
// Display the names of the directories.
Collections::IEnumerator^ myEnum = diArr->GetEnumerator();
while ( myEnum->MoveNext() )
{
DirectoryInfo^ dri = safe_cast<DirectoryInfo^>(myEnum->Current);
Console::WriteLine( dri->Name );
}
}
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
Comentarios
Si no hay subdirectorios, este método devuelve una matriz vacía. Este método no es recursivo.
Este método rellena previamente los valores de las siguientes DirectoryInfo propiedades:
Consulte también
Se aplica a
GetDirectories(String)
- Source:
- DirectoryInfo.cs
- Source:
- DirectoryInfo.cs
- Source:
- DirectoryInfo.cs
Devuelve una matriz de directorios en el DirectoryInfo actual que coinciden con los criterios de búsqueda especificados.
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()
Parámetros
- searchPattern
- String
Cadena de búsqueda que debe coincidir con los nombres de los directorios. Este parámetro puede contener una combinación de ruta de acceso literal válida y caracteres comodín (* y ?), pero no admite expresiones regulares.
Devoluciones
Matriz de tipo DirectoryInfo
que coincide con searchPattern
.
Excepciones
Versiones de .NET Framework y .NET Core anteriores a 2.1: searchPattern
contienen uno o varios caracteres no válidos definidos por el GetInvalidPathChars() método .
searchPattern
es null
.
La ruta de acceso encapsulada en el objeto DirectoryInfo
no es válida (por ejemplo, está en una unidad no asignada).
El llamador no dispone del permiso requerido.
Ejemplos
En el ejemplo siguiente se cuentan los directorios de una ruta de acceso que contiene la letra especificada.
using namespace System;
using namespace System::IO;
int main()
{
try
{
DirectoryInfo^ di = gcnew DirectoryInfo( "c:\\" );
// Get only subdirectories that contain the letter "p."
array<DirectoryInfo^>^dirs = di->GetDirectories( "*p*" );
Console::WriteLine( "The number of directories containing the letter p is {0}.", dirs->Length );
Collections::IEnumerator^ myEnum = dirs->GetEnumerator();
while ( myEnum->MoveNext() )
{
DirectoryInfo^ diNext = safe_cast<DirectoryInfo^>(myEnum->Current);
Console::WriteLine( "The number of files in {0} is {1}", diNext, diNext->GetFiles()->Length );
}
}
catch ( Exception^ e )
{
Console::WriteLine( "The process failed: {0}", e );
}
}
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
Comentarios
searchPattern
puede ser una combinación de caracteres literales y comodín, pero no admite expresiones regulares. Los siguientes especificadores de caracteres comodín se permiten en searchPattern
.
Especificador de caracteres comodín | Coincide |
---|---|
* (asterisco) | Cero o más caracteres en esa posición. |
? (signo de interrogación) | Cero o un carácter en esa posición. |
Los caracteres distintos del carácter comodín son caracteres literales. Por ejemplo, la cadena "*t" busca todos los nombres al terminar con la letra "t". ". La searchPattern
cadena "s*" busca todos los nombres a path
partir de la letra "s".
Este método rellena previamente los valores de las siguientes DirectoryInfo propiedades:
Consulte también
Se aplica a
GetDirectories(String, EnumerationOptions)
- Source:
- DirectoryInfo.cs
- Source:
- DirectoryInfo.cs
- Source:
- DirectoryInfo.cs
Devuelve una matriz de directorios en el objeto DirectoryInfo actual que coinciden con el patrón de búsqueda y las opciones de enumeración especificados.
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()
Parámetros
- searchPattern
- String
Cadena de búsqueda que debe coincidir con los nombres de los directorios. Este parámetro puede contener una combinación de ruta de acceso literal válida y caracteres comodín (* y ?), pero no admite expresiones regulares.
- enumerationOptions
- EnumerationOptions
Un objeto que describe la configuración de búsqueda y enumeración que se va a usar.
Devoluciones
Una matriz de tipo DirectoryInfo
que coincide con searchPattern
y enumerationOptions
.
Excepciones
Versiones de .NET Framework y .NET Core anteriores a 2.1: searchPattern
contienen uno o varios caracteres no válidos definidos por el GetInvalidPathChars() método .
searchPattern
es null
.
La ruta de acceso encapsulada en el objeto DirectoryInfo
no es válida (por ejemplo, está en una unidad no asignada).
El llamador no dispone del permiso requerido.
Comentarios
searchPattern
puede ser una combinación de caracteres literales y comodín, pero no admite expresiones regulares. Los siguientes especificadores de caracteres comodín se permiten en searchPattern
.
Especificador de caracteres comodín | Coincide |
---|---|
* (asterisco) | Cero o más caracteres en esa posición. |
? (signo de interrogación) | Cero o un carácter en esa posición. |
Los caracteres distintos del carácter comodín son caracteres literales. Por ejemplo, la cadena "*t" busca todos los nombres al terminar con la letra "t". ". La searchPattern
cadena "s*" busca todos los nombres a path
partir de la letra "s".
Este método rellena previamente los valores de las siguientes DirectoryInfo propiedades:
Se aplica a
GetDirectories(String, SearchOption)
- Source:
- DirectoryInfo.cs
- Source:
- DirectoryInfo.cs
- Source:
- DirectoryInfo.cs
Devuelve una matriz de directorios en el DirectoryInfo actual aplicando los criterios de búsqueda dados y utilizando un valor para determinar si se busca en los subdirectorios.
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()
Parámetros
- searchPattern
- String
Cadena de búsqueda que debe coincidir con los nombres de los directorios. Este parámetro puede contener una combinación de ruta de acceso literal válida y caracteres comodín (* y ?), pero no admite expresiones regulares.
- searchOption
- SearchOption
Uno de los valores de enumeración que especifica si la operación de búsqueda debe incluir solo el directorio actual o todos los subdirectorios.
Devoluciones
Matriz de tipo DirectoryInfo
que coincide con searchPattern
.
Excepciones
Versiones de .NET Framework y .NET Core anteriores a 2.1: searchPattern
contienen uno o varios caracteres no válidos definidos por el GetInvalidPathChars() método .
searchPattern
es null
.
searchOption
no es un valor SearchOption válido.
La ruta de acceso encapsulada en el objeto DirectoryInfo
no es válida (por ejemplo, está en una unidad no asignada).
El llamador no dispone del permiso requerido.
Ejemplos
En el ejemplo siguiente se enumeran todos los directorios y archivos que comienzan por la letra "c" en "c:\".
using namespace System;
using namespace System::IO;
ref class App
{
public:
static void Main()
{
// Specify the directory you want to manipulate.
String^ path = "c:\\";
String^ searchPattern = "c*";
DirectoryInfo^ di = gcnew DirectoryInfo(path);
array<DirectoryInfo^>^ directories =
di->GetDirectories(searchPattern, SearchOption::TopDirectoryOnly);
array<FileInfo^>^ files =
di->GetFiles(searchPattern, SearchOption::TopDirectoryOnly);
Console::WriteLine(
"Directories that begin with the letter \"c\" in {0}", path);
for each (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);
for each (FileInfo^ file in files)
{
Console::WriteLine(
"{0,-25} {1,25}", file->Name, file->LastWriteTime);
}
} // Main()
}; // App()
int main()
{
App::Main();
}
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
Comentarios
searchPattern
puede ser una combinación de caracteres literales y comodín, pero no admite expresiones regulares. Los siguientes especificadores de caracteres comodín se permiten en searchPattern
.
Especificador de caracteres comodín | Coincide |
---|---|
* (asterisco) | Cero o más caracteres en esa posición. |
? (signo de interrogación) | Cero o un carácter en esa posición. |
Los caracteres distintos del carácter comodín son caracteres literales. Por ejemplo, la cadena "*t" busca todos los nombres al terminar con la letra "t". ". La searchPattern
cadena "s*" busca todos los nombres a path
partir de la letra "s".
Si no hay subdirectorios o ningún subdirectorio coincide con el searchPattern
parámetro , este método devuelve una matriz vacía.
Este método rellena previamente los valores de las siguientes DirectoryInfo propiedades: