Zapis i odczyt pliku tekstowego

Wyjatki i petla for-each - Podstawy Javy (Java)

Przykład pokazuje: Podstawowy zapis do pliku Odczyt pliku linia po linii z numerowaniem Dopisywanie do istniejącego pliku Odczyt całego pliku do jednego Stringa Ważne elementy kodu: Używamy try-with-resources do automatycznego zamykania zasobów FileWriter(fileName, true) - drugi parametr true włącza tryb dopisywania writer.newLine() dodaje znak nowej linii zależny od systemu Dwa różne sposoby odczytu: linia po linii i cały plik naraz Obsługa wyjątków dla każdej operacji na pliku

import java.io.*;

public class Main {
  public static void main(String[] args) {
    String fileName = "test.txt";
    
    // 1. Zapis podstawowy do pliku
    try (BufferedWriter writer = new BufferedWriter(new FileWriter(fileName))) {
      writer.write("Pierwsza linia - przykład zapisu");
      writer.newLine(); // Dodaje znak nowej linii
      writer.write("Druga linia - liczba: " + 42);
      writer.newLine();
      writer.write("Trzecia linia - wartość: " + 3.14);
      
      System.out.println("Pomyślnie zapisano dane do pliku: " + fileName);
      
    } catch (IOException e) {
      System.out.println("Błąd podczas zapisu do pliku: " + e.getMessage());
    }

    // 2. Odczyt z pliku - pierwszy sposób (linia po linii)
    System.out.println("\nOdczyt z pliku (sposób 1 - linia po linii):");
    try (BufferedReader reader = new BufferedReader(new FileReader(fileName))) {
      String line;
      int lineNumber = 1;
      while ((line = reader.readLine()) != null) {
        System.out.println("Linia " + lineNumber + ": " + line);
        lineNumber++;
      }
    } catch (IOException e) {
      System.out.println("Błąd podczas odczytu pliku: " + e.getMessage());
    }

    // 3. Dopisywanie do pliku
    try (BufferedWriter writer = new BufferedWriter(new FileWriter(fileName, true))) { // true oznacza tryb dopisywania
      writer.newLine();
      writer.write("Czwarta linia - dopisana później");
      writer.newLine();
      writer.write("Piąta linia - również dopisana");
      
      System.out.println("\nPomyślnie dopisano dane do pliku");
      
    } catch (IOException e) {
      System.out.println("Błąd podczas dopisywania do pliku: " + e.getMessage());
    }

    // 4. Odczyt z pliku - drugi sposób (cały plik naraz)
    System.out.println("\nOdczyt z pliku (sposób 2 - cały plik):");
    try (BufferedReader reader = new BufferedReader(new FileReader(fileName))) {
      StringBuilder content = new StringBuilder();
      String line;
      while ((line = reader.readLine()) != null) {
        content.append(line).append("\n");
      }
      System.out.println(content.toString());
    } catch (IOException e) {
      System.out.println("Błąd podczas odczytu pliku: " + e.getMessage());
    }
  }
}

Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.

Wszystkie lekcje kursu Podstawy Javy · Zaloguj się, aby zapisać postęp na koncie.