Estoy atravesando por algo muy extraño en estos momentos,
Estoy realizando un programa que leer un archivo, y en cuanto lee la linea la la procesa, y la guarda en un segundo archivo, hasta este punto parece sencillo, estamos hablando de un archivo de 100,000 lineas, y que es solo uno "pequeño", así que para hacer las pruebas limite mi código a que leyera 10 lineas y se saliera, pero cuando quito el if simplemente truena y me manda un StringIndexOutOfBoundsException al leer la linea 7! (siendo que si dejo la condición a 10 lineas la lee sin problemas)
Y no entiendo cual es la diferencia, que cambia o que hace ese if que hace tronar el sistema, les dejo parte del código:
Código:
try{ BufferedReader br = new BufferedReader(new FileReader(archivo)); FileWriter fstream = new FileWriter(this.salida); BufferedWriter out = new BufferedWriter(fstream, 1); int i = 1; while ((thisLine = br.readLine()) != null) { // proceso de la linea if(i >= 10) break; } out.close(); } catch (IOException e) { System.err.println("Error: " + e); }
A que se podría llegar a deber esto?