This documentation is archived and is not being maintained.

FileInfo.Directory Property

Gets an instance of the parent directory.

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

public DirectoryInfo Directory { get; }

Property Value

Type: System.IO.DirectoryInfo
A DirectoryInfo object representing the parent directory of this file.


The specified path is invalid, such as being on an unmapped drive.


The caller does not have the required permission.

To get the parent directory as a string, use the DirectoryName property.

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

The following example opens or creates a file, determines its full path, and determines and displays the full contents of the directory.

using System;
using System.IO;

public class DirectoryTest 
    public static void Main() 

        // Open an existing file, or create a new one.
        FileInfo fi = new FileInfo("temp.txt");

        // Determine the full path of the file just created.
        DirectoryInfo di = fi.Directory;

        // Figure out what other entries are in that directory.
        FileSystemInfo[] fsi = di.GetFileSystemInfos();

        Console.WriteLine("The directory '{0}' contains the following files and directories:", di.FullName);

        // Print the names of all the files and subdirectories of that directory. 
        foreach (FileSystemInfo info in fsi)
//This code produces output similar to the following;  
//results may vary based on the computer/file structure/etc.: 
//The directory 'C:\Visual Studio 2005\release' contains the following files  
//and directories: 

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.

.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