Grazie mille, in effetti è come dici tu. Il problema è stato risolto, tuttavia, ora mi da questo risultato :Originariamente inviato da LeleFT
Subdolo, ma l'ho scovato.
Nel metodo leggi() tu fai questo:
Quella riga in grassetto si mangia la prima riga. Quindi, tu inizializzi l'array "vet" con tante righe quante sono quelle del file... ma crei un oggetto in meno... ovvero, l'ultimo elemento dell'array non viene creato perchè in quel while fai un iterazione in meno.codice:... br=new BufferedReader(new FileReader (nomeFile)); br.readLine(); while ((line=br.readLine())!=null) { StringTokenizer st; ... }
Togli di mezzo quella riga e "tutto funziona".
L'ho messo tra virgolette perchè in realtà non vedrai stampare nulla visto che l'istruzione
Non fa nulla... il metodo toString() restituisce una stringa, ma tu la butti via... forse volevi mettere quell'istruzione in un System.out.println().codice:vet[j].toString();
Ciao.![]()
Tale risultato, l'ho ottenuto modificando quanto segue :codice:IL FILE CONTIENE: 0 null IL FILE CONTIENE: 0 null IL FILE CONTIENE: 0 null IL FILE CONTIENE: 0 null
Ora, date le tue utilissime spiegazioni, capisco di aver sbagliato qualcosa, nell'assegnazione delle variabili, ma non so proprio come porre rimedio.codice:public void stampa () throws IOException { for (int j=0; j<vet.length ; j++){ System.out.println ("IL FILE CONTIENE:\n"+ vet[j].toString()); } }
Potresti aiutarmi, ulteriormente ?
Scusa se utilizzo un lessico non troppo adatto, ma non sono per niente pratico, e sto facendo una fatica mostruosa per tentare di capire questo linguaggio, al fine di raggiungere un buon risultato all'esame.
Grazie.

Rispondi quotando