Jak sprawdzić w C# czy dana ścieżka przechowywana w stringu jest folderem?
0
0
string sciezka = @"C:\Temp";
Directory.Exists(sciezka);
??
0
Problemem Directory.Exists() jest to, że zwraca false w przypadku jakiegokolwiek błędu, np. możesz podać prawidlową ścieżkę do katalogu, ale jeśli nie masz uprawnień do jego odczytania, to metoda zwróci false.
http://msdn.microsoft.com/en-us/library/system.io.directory.exists.aspx
Można to zrobić też tak jak tu:
http://msdn.microsoft.com/en-us/library/system.io.file.getattributes.aspx
FileAttributes att = File.GetAttributes(@ŚCIEŻKA);
if(att & FileAttributes.Directory == FileAttributes.Directory)
{
// to jest katalog
}
lub po prostu
if(File.GetAttributes(@ŚCIEŻKA) & FileAttributes.Directory == FileAttributes.Directory)
{
//to jest katalog
}
i całość objąć try/catch i w catch'ach przechwytywać wyjątki, żeby stwierdzić potencjalne przyczyny wyjątków wymienionych w drugim linku.