public static bool IsDirectory(string path)
{
bool result = false;
if(path.Contains("ftp://") || path.Contains("ftps://") || path.Contains("sftp://"))
{
var ftpUri = new Uri(path);
var isFile = ftpUri.LocalPath.Contains(".");
return !isFile;
}
if(path.EndsWith("\\") || path.EndsWith("/"))
{
result = true;
}
else
{
int idx = path.LastIndexOf("\\", StringComparison.Ordinal);
if(idx > 0)
{
if(!path.Substring(idx).Contains("."))
{
result = true;
}
}
else
{
idx = path.LastIndexOf("/", StringComparison.Ordinal);
if(idx > 0)
{
if(!path.Substring(idx).Contains("."))
{
result = true;
}
}
}
}
return result;
}