Dateien & Eingaben
Ein- und Ausgabe verbinden dein Programm mit der Außenwelt: Konsole, Dateien und Umgebung.
Ansicht
01
Verstehen
Lies die Kernidee und das Beispiel.
02
Prüfen
Beantworte die Aktiv-Checks.
03
Anwenden
Setze die Transferaufgabe um.
Mini-Erfolg
Du hast eine Zeile in eine Datei geschrieben und wieder eingelesen.
Warum das wichtig ist: Damit werden aus Übungsprogrammen echte Werkzeuge, die Daten dauerhaft speichern.
Vorher hilfreich
Lerninhalt
Verstehen & anwenden
Eingabe mit Scanner
Scanner liest von System.in: Zeilen, Zahlen, Wörter.
nextLine liest eine ganze Zeile, nextInt eine Zahl.
Scanner scanner = new Scanner(System.in);
System.out.print("Dein Name: ");
String name = scanner.nextLine();
System.out.println("Hallo " + name + "!");Dateien lesen und schreiben
java.nio.file.Files bietet kompakte Methoden: readString, writeString, readAllLines.
Dateioperationen werfen IOException — Behandlung nicht vergessen.
Path pfad = Path.of("notizen.txt");
Files.writeString(pfad, "Java gelernt!");
String inhalt = Files.readString(pfad);Umgebung und Zeit
System.getenv liest Umgebungsvariablen, System.currentTimeMillis die Zeit.
Für Datum und Uhrzeit ist java.time mit LocalDate und LocalDateTime der Standard.
Vertiefung
Dateien, Pfade und Zeit
Path beschreibt einen Pfad, Files führt Operationen aus. Das ist seit Java 7 die moderne Alternative zu File. Paths sind unveränderlich und können sicher verbunden werden.
Dateien haben Zeichensätze. Wenn Umlaute kaputt ankommen, liegt es oft an einem falschen Charset. java.time arbeitet mit klaren Typen: LocalDate für Datum, LocalDateTime für Datum und Uhrzeit.
Path pfad = Path.of("tagebuch.txt");
Files.writeString(pfad, "Heute Java gelernt!\n");
String inhalt = Files.readString(pfad);
System.out.println(inhalt);
LocalDate heute = LocalDate.now();
System.out.println(heute);Merksatz: Path + Files ist der moderne Standard. Dateioperationen werfen IOException — plane die Behandlung ein.
Übungsaufgabe
Mini-Tagebuch
Schreibe zwei Zeilen in eine Datei und lies sie wieder ein. Ergänze jede Zeile mit dem heutigen Datum.
Das soll dein Programm können
- Path und Files verwenden
- Zwei Einträge schreiben
- Die Datei wieder lesen
- IOException behandeln
Schreibe den Code hier oder in deiner IDE und vergleiche ihn dann mit der Lösung.
Dein Code wird automatisch auf diesem Gerät gespeichert.
Hinweis anzeigen
Nutze Files.writeString(pfad, text) und Files.readString(pfad). main kann throws IOException deklarieren, damit du den Fehler sichtbar machst.
Lösung anzeigen
import java.io.IOException;
import java.nio.file.*;
import java.time.LocalDate;
public class Tagebuch {
public static void main(String[] args) throws IOException {
Path pfad = Path.of("tagebuch.txt");
String heute = LocalDate.now().toString();
String text = heute + ": Java gelernt\n" + heute + ": Dateien verstanden\n";
Files.writeString(pfad, text);
System.out.println(Files.readString(pfad));
}
}Warum funktioniert das?
Die Datei wird beim Schreiben angelegt oder überschrieben. throws IOException gibt die Verantwortung an den Aufrufer weiter — für ein kleines Lernprogramm ist das in Ordnung.
Aktiv-Check
Teste dein Verständnis
Erkennen: Welcher Abschnitt passt?
Welcher Abschnitt passt zu diesen Begriffen?
Spaßprojekt
Mini-Tagebuch
Schreibe drei Zeilen in eine Textdatei und lies sie danach wieder ein. Ergänze Datum und Uhrzeit mit LocalDate.
Selbstcheck
Kann ich das schon?
Hake ab, was du wirklich erklären oder selbst bauen könntest.
Fortschritt
Bereit zum Abschließen?
Markiere die Lektion als abgeschlossen, um XP und Streak zu erhalten.