Estoy analizando un archivo .cvs. Para cada línea de los cvs, creo un objeto con los valores analizados y los pongo en un conjunto.Java BufferedReader compruebe las líneas siguientes de un bucle antes de realizar un bucle
Antes de colocar el objeto en el mapa y pasarlo al siguiente, necesito verificar si la línea del siguiente cvs es el mismo objeto que el real, pero con un valor de propiedad particular diferente.
Para eso, necesito comprobar las siguientes líneas del búfer, pero mantener el búfer del bucle en la misma posición.
Por ejemplo:
BufferedReader input = new BufferedReader(new InputStreamReader(new FileInputStream(file),"ISO-8859-1"));
String line = null;
while ((line = input.readLine()) != null) {
do something
while ((nextline = input.readLine()) != null) { //now I have to check the next lines
//I do something with the next lines. and then break.
}
do something else and continue the first loop.
}
'BufferedReader()' tiene métodos 'mark()' y 'reset()' que pueden ayudarlo (nunca los he usado, por eso no los publico como respuesta). – hmjd
¿Cuál es el problema real? –
¿Puede simplemente llamar a input.mark() sin pasar ningún parámetro? –