|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Mar 2010
Messaggi: 5
|
[Java] Eccezione incomprensibile
Ciao a tutti, sto scrivendo un programma per esercizio, questo è il codice:
import java.io.BufferedReader; import java.io.IOException; import java.io.FileReader; import java.io.File; public class PersonaTester { public static void main(String[] args) throws IOException { Persona[] persone = new Persona[10]; File file = new File("Autori.txt");//Autori.txt è un file da leggere BufferedReader reader = new BufferedReader(new FileReader(file)); String line = reader.readLine(); while(line != null) { int i = 0; int primaVirgola = line.indexOf(","); String nome = line.substring(0, primaVirgola); int secondaVirgola = line.indexOf("," , primaVirgola); String cognome = line.substring(primaVirgola + 1, secondaVirgola); int terzaVirgola = line.indexOf("," , secondaVirgola); Data dataNascita = new Data(line.substring(secondaVirgola + 1,terzaVirgola)); String cittaNatale = line.substring(terzaVirgola + 1, line.length()); persone[i] = new Persona(nome, cognome, dataNascita, cittaNatale); line = reader.readLine(); i++; } System.out.println("Gli autori sono: "); for(Persona a : persone) System.out.println(a); } } nel codice è presente una classe Data da me definita sempre per l'esercizio, e lo stesso vale per Persona, ma il problema è che in fase di esecuzione mi dice StringIndexOutOfBoundsException: String index out of range: -1 e non riesco a capire cosa può significare...!!!!! Grazie in anticipo a tutti. |
|
|
|
|
|
#2 | |
|
Member
Iscritto dal: Jan 2008
Città: roma
Messaggi: 296
|
Quote:
Codice:
int primaVirgola = line.indexOf(",");
Codice:
int primaVirgola = line.indexOf(",");
String nome = "";
if(primaVirgola >= 0)
nome = line.substring(0, primaVirgola);
Ultima modifica di vladix : 14-04-2010 alle 11:14. |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 06:05.



















