Salve!
Ho il seguente problema: ho creato un DataReader che estende la classe Reader dandomi una lettura bufferizzata personalizzata.
Uso poi questo DataReader per leggere dei campi di un file di testo.
La lettura del file txt avviene in due tempi, il codice e' questo:

public void leggi() {
super.leggi();
FileReader fin;
try {
fin = new FileReader(this.get_nome().concat(".txt"));
DataReader dr = new DataReader(fin);
//segue lettura dei campi in un try

La chiamata di super.leggi() chiama il metodo leggi() della superclasse, che legge alcuni campi dallo stesso file e li usa per determinate operazioni.
Quello che mi chiedo e': c'e' un modo per evitare nella sottoclasse dopo aver chiamato il super.leggi() di creare un nuovo datareader che irrimediabilmente ricomincia dall'inizio del file e quindi continuare la lettura da dove e' terminato il primo leggi()?
L'idea che ho provato ad implementare era quella di un counter intero C che tiene conto di quanti char ha letto il primo leggi(), passa C alla sottoclasse che inizia a leggere da C+1..ma per farlo dovrei modificare il DataReader, andando a creare problemi ad altre classi che lo usano.
Se c'e' quindi una via piu' breve, ringrazio chi sapra' indicarmela..altrimenti tocchera' modificare il mio reader

Grazie mille^^