blackguardian
20-01-2010, 16:34
salve ho fatto questo pezzo di codice che mi legge un txt...è po particolare però il mio problema è l'iserimento di un nuovo oggetto nell'array...vi commento dov'è il problema...
try{
FileReader fr = new FileReader("Input.txt");//istanza classe per la lettura del file dei pacchi
BufferedReader br=new BufferedReader(fr);// istanza classe per leggere una riga di testo alla volta dei file dei pacchi
String linea;
int j=0;
int z=0;
Case[] casi = new Case[z];
Point[] punti = new Point [j];
while ((linea = br.readLine()) != null) {
String parole[] = linea.split(" ");
int valoriInt[]=new int[parole.length];
valoriInt[0]=Integer.parseInt(parole[0]);
valoriInt[1]=Integer.parseInt(parole[1]);
int N = valoriInt[0];
int M = valoriInt[1];
Case c = new Case(N,M);
casi[z]= new Case (N,M);//questa mi da l'eccezione
z++;
System.out.println(casi[z]);
for (int i = 0; i == N; i++) {
j++;
linea = br.readLine();
String stringhe[] = linea.split(" ");
int interi [] = new int[stringhe.length];
interi[0]=Integer.parseInt(stringhe[0]);
interi[1]=Integer.parseInt(stringhe[1]);
int x = interi[0];
int y = interi[1];
Point p = new Point(x,y);
punti [j] = new Point (x,y);
System.out.println(punti[j]);
}
}
} catch (IOException ex) {
ex.printStackTrace();
praticamente mi da un errore di eccezione del tipo
java.lang.ArrayIndexOutOfBoundsException
try{
FileReader fr = new FileReader("Input.txt");//istanza classe per la lettura del file dei pacchi
BufferedReader br=new BufferedReader(fr);// istanza classe per leggere una riga di testo alla volta dei file dei pacchi
String linea;
int j=0;
int z=0;
Case[] casi = new Case[z];
Point[] punti = new Point [j];
while ((linea = br.readLine()) != null) {
String parole[] = linea.split(" ");
int valoriInt[]=new int[parole.length];
valoriInt[0]=Integer.parseInt(parole[0]);
valoriInt[1]=Integer.parseInt(parole[1]);
int N = valoriInt[0];
int M = valoriInt[1];
Case c = new Case(N,M);
casi[z]= new Case (N,M);//questa mi da l'eccezione
z++;
System.out.println(casi[z]);
for (int i = 0; i == N; i++) {
j++;
linea = br.readLine();
String stringhe[] = linea.split(" ");
int interi [] = new int[stringhe.length];
interi[0]=Integer.parseInt(stringhe[0]);
interi[1]=Integer.parseInt(stringhe[1]);
int x = interi[0];
int y = interi[1];
Point p = new Point(x,y);
punti [j] = new Point (x,y);
System.out.println(punti[j]);
}
}
} catch (IOException ex) {
ex.printStackTrace();
praticamente mi da un errore di eccezione del tipo
java.lang.ArrayIndexOutOfBoundsException