.NET Framework Class Library
DirectoryInfo..::.GetDirectories Method

Returns the subdirectories of the current directory.

Namespace:  System.IO
Assembly:  mscorlib (in mscorlib.dll)
Syntax

Visual Basic (Declaration)
Public Function GetDirectories As DirectoryInfo()
Visual Basic (Usage)
Dim instance As DirectoryInfo
Dim returnValue As DirectoryInfo()

returnValue = instance.GetDirectories()
C#
public DirectoryInfo[] GetDirectories()
Visual C++
public:
array<DirectoryInfo^>^ GetDirectories()
JScript
public function GetDirectories() : DirectoryInfo[]

Return Value

Type: array<System.IO..::.DirectoryInfo>[]()[]
An array of DirectoryInfo objects.
Exceptions

ExceptionCondition
DirectoryNotFoundException

The path encapsulated in the DirectoryInfo object is invalid, such as being on an unmapped drive.

UnauthorizedAccessException

The caller does not have the required permission.

Remarks

If there are no subdirectories, this method returns an empty array. This method is not recursive.

For a list of common I/O tasks, see Common I/O Tasks.

Examples

The following example retrieves all the directories in the root directory and displays the directory names.

Visual Basic
Imports System
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 'Main
End Class 'GetDirectoriesTest
C#
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);
    }
}
Visual C++
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 );
   }
}

JScript
import System;
import System.IO;

public class GetDirectoriesTest {
    public static function Main() {

        // Make a reference to a directory.
        var di : DirectoryInfo = new DirectoryInfo("c:\\");

        // Get a reference to each directory in that directory.
        var diArr : DirectoryInfo[] = di.GetDirectories();

        // Display the names of the directories.
        for(var i : int in diArr)
            Console.WriteLine(diArr[i].Name);
    }
}
GetDirectoriesTest.Main();
.NET Framework Security

Platforms

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0

XNA Framework

Supported in: 3.0, 2.0, 1.0
See Also

Reference

Other Resources

Tags :


Page view tracker