1 out of 2 rated this helpful - Rate this topic

Path.GetExtension Method

Returns the extension of the specified path string.

Namespace:  System.IO
Assembly:  mscorlib (in mscorlib.dll)
public static string GetExtension(
	string path
)

Parameters

path
Type: System.String
The path string from which to get the extension.

Return Value

Type: System.String
The extension of the specified path (including the period "."), or null, or String.Empty. If path is null, GetExtension returns null. If path does not have extension information, GetExtension returns String.Empty.
Exception Condition
ArgumentException

path contains one or more of the invalid characters defined in GetInvalidPathChars.

The extension of path is obtained by searching path for a period (.), starting with the last character in path and continuing toward the start of path. If a period is found before a DirectorySeparatorChar or AltDirectorySeparatorChar character, the returned string contains the period and the characters after it; otherwise, Empty is returned.

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

The following code example demonstrates using the GetExtension method on a Windows-based desktop platform.


string fileName = @"C:\mydir.old\myfile.ext";
string path = @"C:\mydir.old\";
string extension;

extension = Path.GetExtension(fileName);
Console.WriteLine("GetExtension('{0}') returns '{1}'", 
    fileName, extension);

extension = Path.GetExtension(path);
Console.WriteLine("GetExtension('{0}') returns '{1}'", 
    path, extension);

// This code produces output similar to the following:
//
// GetExtension('C:\mydir.old\myfile.ext') returns '.ext'
// GetExtension('C:\mydir.old\') returns ''


.NET Framework

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

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ
Please specify leading '.' is returned in VS tooltip
I always forget whether the '.' is returned or not. It would be useful if the intellisense tooltip in VS mentioned that so I don't have to press F1 to get here each time.
Caution using wildcard character
If you pass a parameter like, c:\ms-dos\*.bat, the method returns .bat, as stated. So, if you use this method in conjunction with the IO.Directory.GetFiles method, the second parameter to GetFiles() requires a fully qualified wildcard pattern such as *.bat, and will fail with .bat.