csLijo
csLijo

Reputation: 501

C# - Check if a given url is file or directory?

I have a method which will input either a http , ftp or a local path. With the input url, i need to decide whether it is a file or directory.

Path.GetExtension(url) works almost fine. But if a directory begins with/have '.' in its name, then this checking will fail.

Is there any other methods to check and list url if directory ?

Upvotes: 9

Views: 11124

Answers (2)

Alex from Jitbit
Alex from Jitbit

Reputation: 60566

The following code takes the path, looks at the last substring (after the last /) and checks if there is a '.' in that substring to determine if it is a file or a path. isFile will be a boolean, true meaning that it is a file.

var isFile = new Uri(url).AbsolutePath.Split('/').Last().Contains('.');

Upvotes: 4

evanmcdonnal
evanmcdonnal

Reputation: 48076

You could use File.Exists(url) and Directory.Exists(url)

Another approach would be to create an array of extensions then check the result Path.GetExtension(url) against it.

Upvotes: 10

Related Questions