C sharp - LKectrua de ficheros *.txt

 
Vista:

LKectrua de ficheros *.txt

Publicado por Francesc (17 intervenciones) el 19/11/2006 12:47:02
static void CargarFichero() {

FileStream fs = new FileStream("listalibros.txt", FileMode.Open);
StreamReader rw = new StreamReader(fs);
//Creo titulo porque en la primera vuelta ya me lee la primera linea
string titulo = "";
string a;
string c;
float p;
int s;

while ((titulo = rw.ReadLine()) != null) {
a = rw.ReadLine();
c = rw.ReadLine();
p = float.Parse(rw.ReadLine());
s = int.Parse(rw.ReadLine());
libro l = new libro(titulo, a, c, p, s);
libros.Add(l);
}
rw.Close();
fs.Close();

}

Bien pues dado este codgio y leyendo este fichero:

ADP
APS
APD
78
45

Me hace la primera vuelta, me lo añade en la lista, perooooo........ !=null se lo pasa por el forro porque coje y vuelve a entrar en el bucle y claro entonces float.pars/int.parse petan...pq es null...

A ver si alguien puede ayudarme....GRACIAS!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:LKectrua de ficheros *.txt

Publicado por Claudio (9 intervenciones) el 21/11/2006 14:53:28
El programa queda en un bucle porque titulo nunca será nulo. Cuando lees por primera vez titulo deja de ser nulo, entonces no importando si se pueda leer la siguiente linea la condición de While es verdadera.
Una solución sería colocar titulo = null; al final del While.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar