Error de división: IndexOutOfBoundsException
Me quedé atrapado con un problema que parece que no puedo resolver. Al dividir debería poder obtenerid, nombre, cheque configurandofila [0], fila [1], fila [2]. Curiosamente, solo la fila [0] (id) parece funcionar.Nombre, cheque me da un error ¿Alguien podría ayudarme más?
Ejemplo de datos:
id,name,check
1,john,0
1,patrick,0
1,naruto,0
Código:
ArrayList<String> names = new ArrayList<String>();
try {
DataInputStream dis = new DataInputStream(openFileInput(listLocation(listLoc)));
BufferedReader br = new BufferedReader(new InputStreamReader(dis));
String line;
while ((line = br.readLine()) != null) {
String[] row = line.split(Pattern.quote(","));
//names.add(row[0]); // id
names.add(row[1]); // name // ERROR AT THIS LINE
//names.add(row[2]); // check
}
br.close();
}
catch (IOException e) {
e.printStackTrace();
}
Mensaje de error:
Caused by: java.lang.ArrayIndexOutOfBoundsException: length=1; index=1
Resuelto Parece que tenía un valor incorrecto (signos de interrogación) al final del archivo. Al eliminar esta línea. Mi código funcionó (sin Patter.quote). Gracias a todos por la rápida respuesta. La primera respuesta me ayudó a recordarme el uso del valor de registro donde pude ver el 'valor incorrecto'. Culpa mía.