C# Academy · Lekcja

Odczytywanie i zapisywanie plików

Poznaj sposób tworzenia, odczytywania i zapisywania plików za pomocą języka C#

Lekcja 1 z 510 kroki

Odczytywanie i zapisywanie plików to bezpłatna lekcja C# Academy na CoddyKit. To lekcja 1 z 5. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej C# Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs C# Academy zawiera 5 lekcji w sumie.

Wprowadzenie do operacji wejścia-wyjścia

Odczytywanie i zapisywanie plików

Witamy w pierwszej lekcji kategorii „Praca z plikami i danymi”! W tej lekcji dowiedzą się Państwo, jak odczytywać i zapisywać pliki w języku C#, co umożliwia przechowywanie i pobieranie danych z plików tekstowych. Zaczynajmy!

Odczytywanie i zapisywanie plików — ilustracja 1

Dlaczego warto pracować z plikami?

Pliki pozwalają programom trwale przechowywać dane, dzięki czemu pozostają one dostępne nawet po zamknięciu aplikacji. Niezależnie od tego, czy przechowuje się dane użytkowników, dzienniki czy konfiguracje, obsługa plików jest kluczową umiejętnością programistów.

Najważniejsze: C# udostępnia wbudowane klasy, takie jak File, StreamReader i StreamWriter, do obsługi operacji na plikach.

Odczytywanie plików

Aby odczytać zawartość pliku, należy użyć metody File.ReadAllText() w przypadku małych plików lub klasy StreamReader w przypadku większych plików. Przykład:

Najważniejsze: Przed próbą odczytu pliku należy zawsze sprawdzić, czy on istnieje.

using System;
using System.IO;

class Program {
    static void Main() {
        string filePath = "example.txt";

        // Reading a file using File.ReadAllText()
        if (File.Exists(filePath)) {
            string content = File.ReadAllText(filePath);
            Console.WriteLine("File Content:");
            Console.WriteLine(content);
        } else {
            Console.WriteLine("File does not exist.");
        }
    }
}

Zapisywanie plików

Aby zapisać dane w pliku, należy użyć metody File.WriteAllText() w przypadku małych plików lub klasy StreamWriter, jeśli potrzebna jest większa kontrola. Przykład:

Wskazówka: Należy używać File.AppendAllText(), aby dodać dane do istniejącego pliku bez zastępowania jego zawartości.

using System;
using System.IO;

class Program {
    static void Main() {
        string filePath = "output.txt";
        string content = "Hello, this is a test file.";

        // Writing to a file using File.WriteAllText()
        File.WriteAllText(filePath, content);
        Console.WriteLine("File written successfully.");
    }
}

Odczytywanie plików wiersz po wierszu

W przypadku dużych plików wydajniejsze jest odczytywanie ich wiersz po wierszu za pomocą StreamReader. Przykład:

Najważniejsze: Należy używać instrukcji using, aby zagwarantować prawidłowe zamknięcie pliku po zakończeniu odczytu.

using System;
using System.IO;

class Program {
    static void Main() {
        string filePath = "example.txt";

        // Reading a file line by line using StreamReader
        if (File.Exists(filePath)) {
            using (StreamReader reader = new StreamReader(filePath)) {
                string line;
                while ((line = reader.ReadLine()) != null) {
                    Console.WriteLine(line);
                }
            }
        } else {
            Console.WriteLine("File does not exist.");
        }
    }
}

Dopisywanie danych do plików

Aby dodać dane do istniejącego pliku, należy użyć File.AppendAllText() lub klasy StreamWriter z flagą append ustawioną na true. Przykład:

Wskazówka: Należy używać Environment.NewLine, aby zapewnić prawidłowe łamanie wierszy.

using System;
using System.IO;

class Program {
    static void Main() {
        string filePath = "output.txt";
        string newContent = "This line will be appended.";

        // Appending data to a file
        File.AppendAllText(filePath, newContent + Environment.NewLine);
        Console.WriteLine("Data appended successfully.");
    }
}

Zadanie praktyczne

Proszę utworzyć program, który zapisuje w pliku listę nazw wprowadzonych przez użytkownika, a następnie odczytuje plik i wyświetla te nazwy. Przykład:

using System;
using System.IO;

class Program {
    static void Main() {
        string filePath = "names.txt";

        // Writing user-entered names to a file
        Console.WriteLine("Enter names (type 'exit' to stop):");
        using (StreamWriter writer = new StreamWriter(filePath)) {
            string name;
            while ((name = Console.ReadLine()) != "exit") {
                writer.WriteLine(name);
            }
        }

        // Reading the file
        Console.WriteLine("\nNames in the file:");
        using (StreamReader reader = new StreamReader(filePath)) {
            string line;
            while ((line = reader.ReadLine()) != null) {
                Console.WriteLine(line);
            }
        }
    }
}

Najlepsze praktyki dotyczące obsługi plików

Oto kilka najlepszych praktyk:

  • Przed odczytem pliku lub dopisaniem do niego danych należy zawsze sprawdzić, czy plik istnieje.
  • Należy używać instrukcji using, aby automatycznie zamykać strumienie plików.
  • Należy obsługiwać wyjątki, aby uniknąć awarii podczas pracy z brakującymi lub zablokowanymi plikami.

Wskazówka: Prawidłowa obsługa plików zapewnia odporność programu i jego działanie bez błędów.

Podsumowanie operacji wejścia/wyjścia na plikach

Świetna robota!

Gratulacje! Nauczyli się Państwo, jak odczytywać i zapisywać pliki w języku C#. W następnej lekcji poznają Państwo sposoby pracy z formatami danych JSON i XML. Kodujmy dalej!

Odczytywanie i zapisywanie plików — ilustracja 10
Bezpłatny start

Ucz się C# dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
93
Lekcje
346

Często zadawane pytania

Czy lekcja „Odczytywanie i zapisywanie plików” jest bezpłatna?

Tak — pełny tekst „Odczytywanie i zapisywanie plików” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu C# Academy, przejdź na CoddyKit PRO. Kurs C# Academy zawiera 5 lekcji w sumie.

Co nauczysz się w „Odczytywanie i zapisywanie plików”?

Poznaj sposób tworzenia, odczytywania i zapisywania plików za pomocą języka C# Ćwiczysz C# Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć C# Academy?

Nie wymagamy żadnego doświadczenia. C# Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 5.

Ile czasu zajmuje lekcja „Odczytywanie i zapisywanie plików”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji C# Academy?

Tak. Każda lekcja C# Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Odczytywanie i zapisywanie plików
  2. Praca z JSON i XML
  3. Obsługa wyjątków
  4. Praca z bazami danych
  5. Używanie LINQ do zapytań dotyczących danych
← Powrót do C# Academy