Java Reference
In-Depth Information
return result; //Anzahl gelesener Zeichen zurückliefern
}
}
Listing 12.9
VerschluesseltReader abgeleitet von FilterReader
Beim Lesen eines Zeichens wird die Verschiebung innerhalb der Unicode-Tabelle wieder
rückgängig gemacht. In der Methode zum Einlesen in ein Array werden zuerst die Zei-
chen mit der geerbten Lese-Methode in das Array eingelesen. Im
int
result
wird festge-
halten, wie viele Zeichen gelesen wurden. Anschließend werden die Zeichen im Array so
manipuliert, dass die Zeichen wieder unverschlüsselt vorliegen.
12.3.5
Textdatei verschlüsseln und entschlüsseln
Die Verwendung der beiden Komponenten wird in der folgenden Beispielanwendung
demonstriert (
Abbildung 12.8
).
Abbildung 12.8
Beispielanwendung mit FilterWriter und FilterReader
Der Frame enthält eine
JTextPane
-Komponente. Sie kann im Gegensatz zum
JTextField
mehrzeiligen Text als Eingabe aufnehmen und somit wie ein einfacher Editor verwen-
det werden. Damit bei Bedarf auch Scrollbalken eingeblendet werden, sollte die Kompo-
nente, wie in vorangegangenen Beispielen die JList, mit einem
JScrollPane
-Container
verbunden werden.
Beim Speichern wird der Text aus dem
JTextPane
mit Hilfe des
VerschluesseltWriter
in
eine Datei mit dem Namen
verschluesselt.txt
geschrieben. Die Datei wird im Projekt-
ordner angelegt. Sie können die Datei dann mit jedem beliebigen Editor öffnen und die
gespeicherten Zeichen begutachten. Das Programm bietet aber auch selbst die Möglich-
keit, den Text wie gespeichert, also verschlüsselt, wieder in die
JTextPane
-Komponente
zu holen, oder aber mit Hilfe des
VerschluesseltReader
die unverschlüsselte Form wie-
derherzustellen.