Operacje na plikach i folderach

Autor podstrony: Krzysztof Zajączkowski

Stronę tą wyświetlono już: 5649 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:

if(System.IO.Directory.Exists(path)) { Console.WriteLine("Istnieje!"); }

Tworzenie nowej ścieżki dostępu

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

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

Usuwanie folderu

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

var path = "C:\\folder1\\folder2"; 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:

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

Przenoszenie folderu

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

var path = "C:\\folder1\\folder2"; var path_target = "C:\\inny_folder"; 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:

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:

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:

Ustawianie właściwości folderu

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

Operacje na plikach

Sprawdzanie ścieżki do pliku

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

var path = "C:\\plik.txt"; if(System.IO.File.Exists(path)) { Console.WriteLine("Istnieje!"); }

Usuwanie pliku

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

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

Kopiowanie

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

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

Tworzenie pliku

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

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

Przenoszenie pliku

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

var path = "C:\\plik.txt"; var target_path = "C:\\folder\\plik.txt"; 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:

Ustawianie właściwości pliku

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

Propozycje książek
tytuł: C# 10. Programowanie. Tworzenie aplikacji Windows, internetowych i biurowych autor: Ian Griffiths

Tytuł:

C# 10. Programowanie. Tworzenie aplikacji Windows, internetowych i biurowych

Autor:

Ian Griffiths

tytuł: C# 10 i .NET 6 dla programistów aplikacji wieloplatformowych. Twórz aplikacje, witryny WWW oraz serwisy sieciowe za pomocą ASP.NET Core 6, Blazor i EF Core 6 w Visual Studio 2022 i Visual Studio Code. Wydanie VI autor: Mark J. Price

Tytuł:

C# 10 i .NET 6 dla programistów aplikacji wieloplatformowych. Twórz aplikacje, witryny WWW oraz serwisy sieciowe za pomocą ASP.NET Core 6, Blazor i EF Core 6 w Visual Studio 2022 i Visual Studio Code. Wydanie VI

Autor:

Mark J. Price

tytuł: Visual Studio 2022, C# i .NET. Programowanie kontrolek autor: Łukasz Sosna

Tytuł:

Visual Studio 2022, C# i .NET. Programowanie kontrolek

Autor:

Łukasz Sosna

tytuł: C# 10. Leksykon kieszonkowy autor: Joseph Albahari, Ben Albahari

Tytuł:

C# 10. Leksykon kieszonkowy

Autor:

Joseph Albahari, Ben Albahari

tytuł: Wzorce projektowe w .NET Core 3. Projektowanie zorientowane obiektowo z wykorzystaniem C# i F# autor: Dmitri Nesteruk

Tytuł:

Wzorce projektowe w .NET Core 3. Projektowanie zorientowane obiektowo z wykorzystaniem C# i F#

Autor:

Dmitri Nesteruk

tytuł: Jak pisać świetne gry 2D w Unity. Niezależne programowanie w języku C# autor: Jared Halpern

Tytuł:

Jak pisać świetne gry 2D w Unity. Niezależne programowanie w języku C#

Autor:

Jared Halpern

tytuł: C# 9.0 w pigułce autor: Joseph Albahari

Tytuł:

C# 9.0 w pigułce

Autor:

Joseph Albahari

tytuł: C# 9.0. Leksykon kieszonkowy autor: Joseph Albahari, Ben Albahari

Tytuł:

C# 9.0. Leksykon kieszonkowy

Autor:

Joseph Albahari, Ben Albahari

tytuł: C# 8.0. Kompletny przewodnik dla praktyków. Wydanie VII autor: Mark Michaelis

Tytuł:

C# 8.0. Kompletny przewodnik dla praktyków. Wydanie VII

Autor:

Mark Michaelis

tytuł: C# 8.0 w pigułce autor: Joseph Albahari, Eric Johannsen

Tytuł:

C# 8.0 w pigułce

Autor:

Joseph Albahari, Eric Johannsen

W związku z tym, że firma Helion nie wywiązuje się z swoich zobowiązań naliczania prowizji za każdą zakupioną książkę a kontakt z ową frmą jest nie możliwy autor strony zmuszony został do zablokowania linkowania książek. Za wszelkie niedogodności z tym związane z góry przepraszam i obiecuję włączenie linkowania gdy tylko sprawa zostanie wyjaśniona