C# 检查给定的url是文件还是目录?

C# 检查给定的url是文件还是目录?,c#,path,C#,Path,我有一个方法可以输入http、ftp或本地路径。 通过输入url,我需要确定它是文件还是目录 GetExtension(url)几乎可以正常工作。但是,如果目录名称中以/have.'开头,则此检查将失败 是否有其他方法可以检查并列出url if directory?您可以使用File.Exists(url)和directory.Exists(url) 另一种方法是创建一个扩展名数组,然后对照它检查结果Path.GetExtension(url)。以下代码获取路径,查看最后一个子字符串(在最后一个

我有一个方法可以输入http、ftp或本地路径。 通过输入url,我需要确定它是文件还是目录

GetExtension(url)几乎可以正常工作。但是,如果目录名称中以/have.'开头,则此检查将失败


是否有其他方法可以检查并列出url if directory?

您可以使用
File.Exists(url)
directory.Exists(url)


另一种方法是创建一个扩展名数组,然后对照它检查结果
Path.GetExtension(url)

以下代码获取路径,查看最后一个子字符串(在最后一个/)并检查该子字符串中是否有“.”,以确定它是文件还是路径
isFile
将是一个布尔值,真正的意思是它是一个文件


var isFile=newURI(url).AbsolutePath.Split('/').Last().Contains('.')

File.Exists(url)不起作用,因为对于http/ftp情况,它将返回false。作为另一种选择,我可以考虑你的第二种方法。感谢EvanMcDonnal,这段代码可能是解决方案,包括一个解释真的有助于提高您的文章质量。请记住,您是在为将来的读者回答这个问题,而这些人可能不知道您的代码建议的原因。@Kurtvanden有时代码是不言自明的(对于那些能够阅读的人来说)。并不是每一段代码都值得这样做,否则你只是形式化,没有帮助。