Java Reference
In-Depth Information
Analog zur Ableitung eines eigenen Writers müssen Sie beim Reader nur die Methoden
zum Lesen selbst für Ihre Zwecke implementieren. Alle anderen Methoden können wie
vererbt verwendet werden.
Das folgende Listing zeigt, wie die read -Methoden überschrieben werden müssen,
damit die mit dem VerschluesseltWriter geschriebenen Zeichen wieder entschlüsselt
werden können.
import java.io.FilterReader;
import java.io.IOException;
import java.io.Reader;
public class VerschluesseltReader extends FilterReader {
public VerschluesseltReader(Reader in) {
super(in);
}
12
public int read() throws IOException {
return super.read() - 1;
/* verschiebt das gelesene Zeichen wieder um eine Position
* zurück
*/
}
public int read(char[] c, int offset, int length) throws IOException {
// 1. orginaldaten einlesen
int result = super.read(c, offset, length);
/* Zeichen werden in das char-Array c eingelesen
* und in result wird die Anzahl der gelesenen Zeichen
* gespeichert
*/
// 2. dekodieren
for(inti=0;i<result;i++){
c[i+offset]=(char)((int)(c[i+offset])-1);
/* Jedes Zeichen des char-Arrays wird in den
* Zeichencode konvertiert (int); Der Zeichencode
* wird um 1 reduziert und anschließend wieder in
* den Datentyp char umgewandelt
*/
}
Search WWH ::




Custom Search