public static class DirectoryInfoExtensions
{
public static void DeleteAll(this DirectoryInfo a_dir_info)
{
if (!a_dir_info.Exists)
return;
foreach (FileInfo file_info in a_dir_info.GetFiles())
file_info.Delete();
foreach (DirectoryInfo dir_info in a_dir_info.GetDirectories())
dir_info.DeleteAll();
a_dir_info.Delete(false);
}
}
2009-10-21
Kasowanie całego katalogu
Prosta funkcja kasująca cały katalog wraz z plikami i podkatalogami. Standardowa procedura kasowania katalogu wymaga by całe poddrzewo katalogów nie zawierało plików. Jak zawsze przy korzystaniu z takich funkcji trzeba uważać bo można sobie zrobić kuku. Funkcja ta nie stara się w żaden sposób przejąć prawa do tego do czego nie ma prawa (tzn. zmiana uprawnień plików, zmiana atrybutu read-only). Jak coś się nie uda to będzie wyjątek. A oto kasująca wszystko metoda rozszerzona:
Subskrybuj:
Komentarze (Atom)