Skip to content
Related Articles

Related Articles

Check if a path has a file name extension in C#

Improve Article
Save Article
Like Article
  • Last Updated : 04 Apr, 2019

Path.HasExtension Method is used to check whether the specified path has a file name extension or not.
This method will start the searching for a period (.) followed by at least one character from the end of the path. If this pattern is found before a DirectorySeparatorChar, AltDirectorySeparatorChar, or VolumeSeparatorChar character is encountered, this method returns true.


public static bool HasExtension (string path);

Here, path is the specified path to search for an extension.

Returns: This method will return 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: This method will give ArgumentException if the path contains one or more of the invalid characters defined in GetInvalidPathChars().


Input : 
string strPath1 = "C:// myfiles//ref//file1.txt";
string strPath2 = "C:// myfiles//ref//file2";

// checking for the extension

Output :


// C# program to check whether
// a file have an extension or not
using System;
using System.IO;
namespace Geeks {
class GFG {
    // Main Method
    static void Main(string[] args)
        // taking two paths
        string strPath1 = "C:// myfiles// ref// file1.txt";
        string strPath2 = "C:// myfiles// ref// file2";
        // checking whether the file 
        // has an extension or not
        if (Path.HasExtension(strPath1))
            Console.WriteLine("{0} have an extension...", strPath1);
            Console.WriteLine("{0} don't have an extension...", strPath1);
        // checking whether the file 
        // has an extension or not
        if (Path.HasExtension(strPath2))
            Console.WriteLine("{0} have an extension...", strPath2);
            Console.WriteLine("{0} don't have an extension...", strPath2);
C:// myfiles// ref// file1.txt have an extension...
C:// myfiles// ref// file2 don't have an extension...


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!