Path.HasExtension Method (String)


Determines whether a path includes a file name extension.

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

Public Shared Function HasExtension (
	path As String
) As Boolean


Type: System.String

The path to search for an extension.

Return Value

Type: System.Boolean

true if the characters that follow the last directory separator (\\ or /) or volume separator (:) in the path include a period (.) followed by one or more characters; otherwise, false.

Exception Condition

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

Starting from the end of path, this method searches for a period (.) followed by at least one character. If this pattern is found before a DirectorySeparatorChar, AltDirectorySeparatorChar, or VolumeSeparatorChar character is encountered, this method returns true.

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

The following code example demonstrates the use of the HasExtension method.

Dim fileName1 As String = "myfile.ext"
Dim fileName2 As String = "mydir\myfile"
Dim pathname As String = "C:\mydir.ext\"
Dim result As Boolean

result = Path.HasExtension(fileName1)
Console.WriteLine("HasExtension('{0}') returns {1}", fileName1, result)

result = Path.HasExtension(fileName2)
Console.WriteLine("HasExtension('{0}') returns {1}", fileName2, result)

result = Path.HasExtension(pathname)
Console.WriteLine("HasExtension('{0}') returns {1}", pathname, result)

' This code produces output similar to the following:
' HasExtension('myfile.ext') returns True
' HasExtension('mydir\myfile') returns False
' HasExtension('C:\mydir.ext\') returns False

Universal Windows Platform
Available since 8
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top