Ragazzi sto provando a fare un altro esercizio sulla falsa riga di quello sopra.Il file da leggere è:
Il programma scritto è il seguente:codice:3 1 880 600 Anna Anna 2 830 678 Luca Anni 3 223 610 Paolo Errore
parte operativa:codice:public class Listone { int numimmagini; int cod; int larg; int alt; String nome; public Listone(int numimmagini,int cod,int larg, int alt,String nome){ this.numimmagini=numimmagini; this.cod=cod; this.larg=larg; this.alt=alt; this.nome=nome; } public String toString(){ String descrizione; descrizione= numimmagini+"\n"+cod+"\t"+larg+"\t"+alt+"\t"+nome; return descrizione; } public int getnumimmagini(){ return numimmagini; } public int getcod(){ return cod; } public int getlarg(){ return larg; } public int getalt(){ return alt; } public String getnome(){ return nome; } }
tuttavia mi da ancora questo errore:codice:import java.io.*; import java.util.*; import java.util.StringTokenizer; public class Esecuzione { int numimmagini; int cod; int larg; int alt; String nome; int i; int numRighe; Listone[]vet; public Esecuzione(){ vet=new Listone[numRighe]; } public void leggi(String nomeFile)throws IOException { String line; BufferedReader br=new BufferedReader(new FileReader (nomeFile)); i=0; while ((line=br.readLine())!=null) { i++; } numRighe=i; vet=new Listone [numRighe]; i=0; br.close(); br=new BufferedReader(new FileReader (nomeFile)); while ((line=br.readLine())!=null) { StringTokenizer st; st=new StringTokenizer(line); int numimmagini=Integer.parseInt(st.nextToken()); int cod=Integer.parseInt(st.nextToken()); int larg=Integer.parseInt(st.nextToken()); int alt=Integer.parseInt(st.nextToken()); String nome=st.nextToken (); vet[i]=new Listone (numimmagini,cod,larg,alt,nome); i++; } } public void stampa () throws IOException { for (int j=0; j<vet.length ; j++){ System.out.println ("IL FILE CONTIENE \t:"+vet[j].toString() ); } } public static void main(String[]args)throws IOException { Esecuzione vet=new Esecuzione(); String nomeFile="eseguilo.txt"; if(args.length==1) nomeFile=args[0]; vet.leggi(nomeFile); vet.stampa(); } }
gentilmente mi potreste aiutare a risolvere il problema?codice:Exception in thread "main" java.util.NoSuchElementException at java.util.StringTokenizer.nextToken(StringTokenizer.java:349) at Esecuzione.leggi(Esecuzione.java:32) at Esecuzione.main(Esecuzione.java:50) Premere un tasto per continuare . . .
So che il problema è il medesimo di prima(almeno credo) ma non riesco proprio a risolvere,grazie mille!

Rispondi quotando