Operacje na plikach i folderach

Stronę tą wyświetlono już: 347 razy

Operacje na folderach i ścieżkach dostępu

Sprawdzanie ścieżki do folderu

Metoda statyczna System.IO.Directory.Exists sprawdza, czy dana ścieżka do folderu jest prawidłowa:

Listing 1
  1. if(System.IO.Directory.Exists(path))
  2. {
  3. Console.WriteLine("Istnieje!");
  4. }

Tworzenie nowej ścieżki dostępu

Metoda statyczna System.IO.Directory.CreateDirectory umożliwia utworzenie folderów:

Listing 2
  1. var path = "C:\\folder1\\folder2";
  2. System.IO.Directory.CreateDirectory(path);

Usuwanie folderu

Metoda statyczna System.IO.Directory.Delete umożliwia usunięcie folderu:

Listing 3
  1. var path = "C:\\folder1\\folder2";
  2. System.IO.Directory.CreateDirectory(path);

Powyższy kod usuwa folder o nazwie folder2, pod warunkiem, że ten jest pusty. Możliwe jest usunięcie rzeczonego folderu ze wszystkim co się w nim znajduje w następujący sposób:

Listing 4
  1. var path = "C:\\folder1\\folder2";
  2. System.IO.Directory.CreateDirectory(path, true);

Przenoszenie folderu

Metoda statyczna System.IO.Directory.Move umożliwia przeniesienie folderu:

Listing 5
  1. var path = "C:\\folder1\\folder2";
  2. var path_target = "C:\\inny_folder";
  3. System.IO.Directory.Move(path, path_target);

Pozyskiwanie listy ścieżek bezwzględnych do folderów znajdujących się w podanej lokalizacji

Metoda statyczna System.IO.Directory.GetDirectories zwraca listę ścieżek bezwzględnych do folderów zawartych w podanej lokalizacji:

Listing 6
  1. string[] dir = System.IO.Directory.GetDirectories("D:\\folder", "*");

Drugi argument jest filtrem i oznacza, że wszystkie foldery zostaną wczytane, można też wstawiać ograniczenia jak np. "??dane*" - co oznacza, że po dwóch pierwszych dowolnych znakach w nazwie katalogu powinno znaleźć się słowo dane a następnie to już może się pojawić dowolny ciąg znaków (co oznacza *).

Pozyskiwanie listy ścieżek bezwzględnych do plików znajdujących się w podanej lokalizacji

Metoda statyczna System.IO.Directory.GetFiles zwraca listę ścieżek bezwzględnych do plików zawartych w podanej lokalizacji:

Listing 7
  1. string[] files = System.IO.Directory.GetFiles("D:\\folder", "*");

Drugi argument jest filtrem i oznacza, że wszystkie pliki zostaną wczytane, można też wstawiać ograniczenia jak np. "??dane*" - co oznacza, że po dwóch pierwszych dowolnych znakach w nazwie pliku powinno znaleźć się słowo dane a następnie to już może się pojawić dowolny ciąg znaków (co oznacza *).

Pozyskiwanie informacji o folderze

Istnieje zbiór metod, które umożliwiają pozyskiwanie informacji na temat folderów:

  • System.IO.Directory.GetAccessControl - umożliwia pozyskanie informacji o uprawnieniach dostępu do katalogu;
  • System.IO.Directory.GetCreationTime - pozyskiwanie informacji o dacie utworzenia folderu;
  • System.IO.Directory.GetCurrentDirectory - pozyskiwanie bieżącej ścieżki ustawionej w programie;
  • System.IO.Directory.GetLastAccessTime - data ostatniego dostępu do folderu;
  • System.IO.Directory.GetLastWriteTime - data ostatniego zapisu;
  • System.IO.Directory.GetLogicalDrives - pozyskiwanie listy dostępnych dysków;

Ustawianie właściwości folderu

Istnieje zbiór metod, które umożliwiają ustawianie właściwości folderów:

  • System.IO.Directory.SetAccessControl - umożliwia ustawianie uprawnień dostępu do katalogu;
  • System.IO.Directory.SetCreationTime - ustawia datę utworzenia folderu;
  • System.IO.Directory.SetCurrentDirectory - zmiana bieżącej ścieżki ustawionej w programie;
  • System.IO.Directory.SetLastAccessTime - zmiana daty ostatniego dostępu do folderu;
  • System.IO.Directory.SetLastWriteTime - zmiana daty ostatniego zapisu;

Operacje na plikach

Sprawdzanie ścieżki do pliku

Metoda statyczna System.IO.File.Exists sprawdza, czy dana ścieżka do pliku jest prawidłowa:

Listing 8
  1. var path = "C:\\plik.txt";
  2. if(System.IO.File.Exists(path))
  3. {
  4. Console.WriteLine("Istnieje!");
  5. }

Usuwanie pliku

Metoda statyczna System.IO.File.Delete usuwa podany plik:

Listing 9
  1. var path = "C:\\plik.txt";
  2. System.IO.File.Delete(path);

Kopiowanie

Metoda statyczna System.IO.File.Copy kopiuje podany plik:

Listing 10
  1. var path = "C:\\plik.txt";
  2. var copy_path = "C:\\plik2.txt";
  3. System.IO.File.Delete(path, copy_path);

Tworzenie pliku

Metoda statyczna System.IO.File.Create tworzy nowy plik:

Listing 11
  1. var path = "C:\\plik.txt";
  2. System.IO.File.Create(path);

Przenoszenie pliku

Metoda statyczna System.IO.File.Move przenosi podany plik:

Listing 12
  1. var path = "C:\\plik.txt";
  2. var target_path = "C:\\folder\\plik.txt";
  3. System.IO.File.Delete(path, target_path);

Pozyskiwanie informacji o pliku

Oto lista metod umożliwiających pozyskiwanie informacji o właściwościach pliku:

  • System.IO.File.GetAttributes - zwraca atrybuty pliku;
  • System.IO.File.GetAccessConstrol - zwraca informacje o dostępie do pliku;
  • System.IO.File.GetCreationTime - zwraca datę utworzenia pliku;
  • System.IO.File.GetLastAccessTime - zwraca datę ostatniego dostępu do pliku;
  • System.IO.File.GetLastWriteTime - zwraca ostatnią datę zapisu pliku;

Ustawianie właściwości pliku

Oto lista metod umożliwiających ustawianie właściwości plików:

  • System.IO.File.SetAttributes - ustawia atrybuty pliku;
  • System.IO.File.SetAccessConstrol - ustawia informacje o dostępie do pliku;
  • System.IO.File.SetCreationTime - ustawia datę utworzenia pliku;
  • System.IO.File.SetLastAccessTime - ustawia datę ostatniego dostępu do pliku;
  • System.IO.File.SetLastWriteTime - ustawia ostatnią datę zapisu pliku;

Komentarze