EAD II – Übung 7

Werbung
EAD II – Übung 7
Dateiarbeit mit Java
Arbeit mit Dateien
!  Einlesen und Ausgeben von Daten über Streams
Klassen FileReader und FileWriter zum Lesen
der Datenströme
!  Klasse File bietet Methoden zum Zugriff auf eine
Dateien, z.B. Anlegen von Verzeichnissen,
Umbenennen usw.
!  Dateien werden dauerhaft auf einem Datenträger
gespeichert
!  Zusammenspiel zwischen Java und Betriebssystem –
während der Ausführung können Laufzeitfehler
auftreten
Behandlung von Laufzeitfehlern
!  Exceptions sind Objekte mit Informationen über
Programmfehler
!  Exception-Handler Programmabschnitt zum Schutz
von Anweisungen vor möglichen Fehlern, enthält
Anweisungen zur Meldung des Fehlers bzw. zum Umgang
damit
try {
eine oder mehrere geschützte Anweisungen
}
catch (Exception e) {
System.out.println(“Fehler“);
}
Arbeit mit Dateien
!  Java verlangt Fehlerbehandlung bei Arbeit mit
Dateien, also try-catch-Konstrukt
!  Dateidialog kann noch im ungeschützten
Programmteil stehen
!  Zuweisung der Datenströme muss in den geschützten
Bereich
!  erforderliche Pakete müssen importiert werden
import java.io.*;
//für File, Reader
import java.awt.*; //für Dialogfenster
Arbeit mit Dateien - Schreiben
!  über Dateidialog die Dateien zum Speichern auswählen
!  dann ausgewählte Datei an Dateivariable zuweisen
FileDialog dialog = new FileDialog(new Frame(), "Datei
öffnen", FileDialog.SAVE);
dialog.setVisible(true);
if (dialog.getFile() == null) return;
datei = new
File(dialog.getDirectory(),dialog.getFile());
Arbeit mit Dateien - Schreiben
!  Verknüpfen der physischen Datei mit dem
StreamReader und Schreiben
try {
BufferedWriter ausgabe = new BufferedWriter(new
FileWriter(datei));
inhalt = “Das ist der Dateiinhalt.“;
ausgabe.write(inhalt);
ausgabe.close();
}
catch (Exception e) {
...
}
Arbeit mit Dateien - Lesen
!  über Dateidialog die Dateien zum Öffnen auswählen
!  dann ausgewählte Datei an Dateivariable zuweisen
FileDialog dialog = new FileDialog(new Frame(), "Datei
öffnen", FileDialog.LOAD);
dialog.setVisible(true);
if (dialog.getFile() == null) return;
datei = new
File(dialog.getDirectory(),dialog.getFile());
Arbeit mit Dateien - Lesen
!  Verknüpfen der physischen Datei mit dem StreamReader und Lesen
try {
BufferedReader ein = new BufferedReader(new
FileReader(datei));
while (ein.ready() == true)
{
eingabe = ein.readLine();
System.out.println(eingabe);
}
ein.close();
}
catch (Exception e)
...
Arbeit mit Dateien
!  BufferedReader und BufferedWriter lesen bzw.
schreiben Unicodezeichen
!  Daten werden immer aus einem zugeordneten
Reader-Objekt bezogen oder in Writer-Objekt
geschrieben
!  readLine() liest alle Zeichen bis zum Zeilenende
in einen String
!  write() schreibt einen String in die Datei
!  soll eine neue Teile begonnen werden, muss man
newLine() aufrufen
Herunterladen