The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

Path.GetDirectoryName Method

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Returns the directory information for the specified path string.

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

public static string GetDirectoryName(
	string path


Type: System.String
The path of a file or directory.

Return Value

Type: System.String
A string that contains directory information for path, or null if path denotes a root directory or is null. Returns String.Empty if path does not contain directory information.


The path parameter contains invalid characters, is empty, or contains only white spaces.


The path parameter is longer than the system-defined maximum length.

In most cases, the string returned by this method consists of all characters in the path up to but not including the last DirectorySeparatorChar or AltDirectorySeparatorChar. If the path consists of a root directory, such as "c:\", null is returned. Note that this method does not support paths using "file:". Because the returned path does not include the DirectorySeparatorChar or AltDirectorySeparatorChar, passing the returned path back into the GetDirectoryName method will result in the truncation of one folder level per subsequent call on the result string.

Version Notes

Windows Phone

 If you pass an invalid path in GetDirectoryName, the method does not throw an exception. For example, System.IO.Path.GetDirectoryName(@"D:\temp\ .") returns D:\temp instead of throwing an exception. GetDirectoryName also does not throw an exception when the source path is longer than the system-defined maximum path length.

Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone