Como puedo controlar que me lea un fichero hasta la ultima linea?

RaulC
19 de Noviembre del 2003
estoy haciendo un metodo de lectura:

class Leer{

Leer(String d)
{
String asd=new String();
Hombre j=new Hombre();
try{
FileReader freader=new FileReader(d);
BufferedReader in = new BufferedReader(freader);
while(in.readLine()!=null){
asd=in.readLine();
StringTokenizer st=new StringTokenizer(asd,";");
int i=0;
while(st.hasMoreTokens()){
String s=st.nextToken();
System.out.println(s+" ");
}
}
}
catch(IOException e){System.out.println("ERROR DE LECTURA");}
}
}

pero me da errores por todos los lados cuando le doy a leer....... si me podeis echar una mano os lo agradeceria, gracias

Mario Lavarreda
19 de Noviembre del 2003
en la parte
while(in.readLine!=null)

readLine jamas te devuelve null..
solo -1
le tenes que dar

while(in.readLine()!=-1)

profesorchiflado
19 de Noviembre del 2003
Cada vez que pones readLine lees una linea, sustituye el del while por asd!=null.
Y ni caso a Mario que readLine devuelve null al llegar al final del fichero.
Saludos

profesorchiflado
19 de Noviembre del 2003
Ese codigo no da ningun error, siempre que tengas definida la clase Hombre.
Lo unico que te hace raro es que te muestra linea si, linea no debido a que lees dos veces del fichero y solo guardas una.
Saludos.

RaulC
19 de Noviembre del 2003
Perdona si parezco tonto.. pero es que no he entendido muy bien lo que me has querido decir, o no me doy cuenta de donde leo 2 veces? gracias