Jason. Cała informatyka w jednym miejscu!

Następny rozdział z obsługi plików to jest ta druga klasa potomna klasy "FileSystemInfo". Teraz weźmiemy pod lupę "DirectoryInfo" w języku C#, czyli klasę stworzoną z myślą o łatwiejszej obsłudze katalogów :D! Serdecznie zapraszam.

KATALOGI KIERUJ DO "DIRECTORYINFO" W JĘZYKU C#!

Drugą klasą pochodzącą "z żebra" klasy "FileSystemInfo" jest "DirectoryInfo" i jak już zdążyłem napisać u samej góry, pozwala w sposób łatwiejszy obsługiwać katalogi (poprzednio omawiana klasa "FileInfo" dotyczyła plików). Łatwiejszy, czyli dysponuje własną serią właściwości i metod przeznaczonych do manipulacji katalogami. Od strony konstruktora działa identycznie. Po prostu podajemy za parametr formalny ścieżkę dostępu, ale tym razem do katalogu, folderu.

Ponieważ klasa "DirectoryInfo" w języku C# dziedziczy po "FileSystemInfo", wszystkie właściwości i metody są przekazywane klasie omawianej teraz :). A czym dysponuje sama z siebie?

WŁAŚCIWOŚCI KLASY "DIRECTORYINFO"

Z właściwości można wyciągnąć tylko cztery sztuki. Wszystkie są niemodyfikowalne (dysponują wyłącznie "getterem"). Oto one:

NAZWA ZNACZENIE
Exists Ustalenie czy dany katalog istnieje
Name Pobranie nazwy instancji klasy "DirectoryInfo"
Parent Pobranie katalogu nadrzędnego poprzez zwrócenie instancji "DirectoryInfo"
Root Pobranie fragmentu katalogu głównego ("korzenia") poprzez zwrócenie instancji "DirectoryInfo"

METODY KLASY "DIRECTORYINFO"

Metod w "DirectoryInfo" w języku C# znajdziecie już trochę więcej:

NAZWA ZNACZENIE
Create Tworzenie katalogu.
CreateSubdirectory Tworzenie podkatalogu we wskazanym katalogu.
Delete Usuwanie katalogu.
GetDirectories Zwrócenie katalogów w postaci tablicy obiektów "DirectoryInfo" w języku C# jakie znajdują się we wskazanym katalogu.
GetFiles Zwrócenie plików w postaci tablicy obiektów "FileInfo" jakie znajdują się we wskazanym katalogu.
GetFileSystemInfos Zwrócenie tablicy obiektów "FileSystemInfo" reprezentujących wszystkie pliki i podkatalogi.
MoveTo Przeniesienie katalogu w inne miejsce podane jako parametr formalny.

TO TAKŻE JEST SKŁONNE ZGŁOSIĆ WYJĄTEK!

Ostatnia wiadomość przed ukazaniem przykładu. "DirectoryInfo" w języku C# także może zgłosić niejeden rodzaj wyjątku i zdecydowanie lepiej będzie już Was skierować do artykułu poprzedniego, bo tam umieściłem wszystkie informacje :).

PRZYKŁAD KODU ŹRÓDŁOWEGO

I jeszcze jeden raz podkreślimy sobie artykuł prostym przykładem. Wypisanie kilku właściwości plus wywołanie jednej z metod, która zwróci tablicę znalezionych plików (od siebie dodałem jeszcze filtr, który sprawi że uwzględni tylko pliki rozpoczynające się na literę 'L'):

string filename = "bin";
DirectoryInfo di = new DirectoryInfo(filename);
FileInfo[] foundFiles = di.GetFiles("L*");

Console.WriteLine("Katalog nadrzędny katalogu {0}: {1}", filename, di.Parent);
Console.WriteLine("Katalog główny katalogu {0}: {1}", filename, di.Root);
Console.WriteLine("Atrybuty pliku {0}: {1}", filename, di.Attributes);
Console.Write("Znalezione pliki: ");

foreach (FileInfo file in foundFiles)
{
	Console.Write(file.Name);
}
Klasa "DirectoryInfo" w języku C#

"DirectoryInfo" w języku C# także dziedziczy od "FileSystemInfo". Jest to klasa bardziej zorientowana na obsługę katalogową.


Jeśli myślicie, że to koniec artykułów w takiej formie, to muszę Was zmartwić. Czeka nas do opisania jeszcze kilka konstrukcji (nie tylko klas, ale także struktur), więc mogę tylko poprosić o cierpliwość, jeśli nie przepadacie za taką prezentacją :P.

PODOBNE ARTYKUŁY