Java Reference
In-Depth Information
Abbildung 12.7 Frame des Programms »Kontaktliste«
Die Methode jBtnEndeActionPerformed umfasst bisher nur die Anweisung System.
exit(0) , um das Programm zu beenden. Vor dieser Anweisung müssen Sie die Ergän-
zungen zum Speichern der Daten einfügen.
12
Das Speichern von Daten auf einem Datenträger bedingt immer einen Zugriff auf Hard-
warekomponenten. Solche Zugriffe können aus vielerlei Gründen Fehler (Exceptions)
auslösen. Datenträger können voll, schreibgeschützt oder auch fehlerhaft sein. Deshalb
sollten Sie bei solchen Zugriffen grundsätzlich eine Reaktion auf Exceptions vorsehen.
Für das Speichern der Textdaten greifen Sie auf zeichenorientierte Streams ( Writer )
zurück. Da unter Umständen viele Einträge in der Listbox stehen, die in einer Schleife
abgearbeitet werden, wobei viele Schreibvorgänge ausgelöst werden, macht es Sinn,
einen gepufferten Stream einzusetzen. Ein BufferedWriter übernimmt das Puffern und
reicht die Daten zum Schreiben an einen Writer weiter. Im vorliegenden Fall wollen Sie
in eine Datei schreiben. Deshalb ist hier der FileWriter die richtige Wahl. Erweitern Sie
die import -Liste um die Einträge
import java.io.BufferedWriter;
import java.io.FileWriter;
Die Kontaktdaten sollen in der Datei mit dem Namen Kontakte.dat gespeichert werden.
Die Datei soll im gleichen Ordner gespeichert werden, in dem auch unser Projekt
gespeichert ist. Definieren Sie entsprechend als Eigenschaft des Frames eine Stringvari-
able mit dem Namen dateiname , und initialisieren Sie den String mit dem relativen Pfad
zum aktuellen Verzeichnis. Wie Sie vielleicht wissen, können Sie mit dem Bezeichner
Punkt ( . ) auf das aktuelle Verzeichnis verweisen. Dieses aktuelle Verzeichnis entspricht
für ein gestartetes Programm dem Ordner, aus dem die ausführbare Programmdatei
gestartet wurde. Soll die Datei kontakte.dat heißen und im gleichen Ordner angelegt
Search WWH ::




Custom Search