mvnForum Homepage Bienvenido domingo  |  Terminar sesión   
  Búsqueda  
  Indice |  Temas Recientes |  Quién Está en Línea |  Lista de Usuarios |  Mi Perfil |  Búsqueda |  Ayuda


Ir a »
Total de mensajes en este tema: 3 [Eliminar este Tema] [Mover este Tema]
[Ańadir a Mis Favoritos] [Ańadir un aviso a este tema] [Publicar nuevo tema]
Autor
Tema Anterior Este tema ha sido visto 49 veces y tiene 2 respuestas Tema Siguiente
Masculino xavivars
Extranjero



Ingresó: May 10, 2004
Mensajes: 14
Estado: Desconectados

Adjuntar archivo   Editar este mensaje   Sesió 10: lectura dels fitxers Responder a este mensaje
Responder citando
[Eliminar este Tema]

Em passa una cosa força extranya:

A l'hora de llegir els fitxers al principi del programa, es lligen bé (es creen les figures que conté sense cap problema) i després salta l'excepció IOException.

A algú li passa el mateix?
[Jul 17, 2004 5:23:41 PM] Print Post Reportar mensaje ofensivo  Ir al inicio 
Masculino xavivars
Extranjero



Ingresó: May 10, 2004
Mensajes: 14
Estado: Desconectados

Adjuntar archivo   Editar este mensaje   Re: Sesió 10: lectura dels fitxers Responder a este mensaje
Responder citando
[Eliminar este mensaje]

Ja he trobat l'error:

El mètode readObject de la classe ObjectInputStream no retorna null quan arriba al final del fitxer, sinó que llança una excepció del tipus EOFException (subtipus de IOException).

Per tant, cal capturar aquesta excepcio a banda de la IO per tal de que el programa funcione correctament.
[Jul 17, 2004 6:16:06 PM] Print Post Reportar mensaje ofensivo  Ir al inicio 
Masculino nacho
Miembro



Ingresó: Feb 1, 2004
Mensajes: 63
Estado: Desconectados

Adjuntar archivo   Editar este mensaje   Re: Sesió 10: lectura dels fitxers Responder a este mensaje
Responder citando
[Eliminar este mensaje]

Eso es.

En un hilo anterior me preguntaban si la condición del bucle while era la correcta:

while ((f = (Figura)(ois.readObject()))!= null)
{
... bucle
}

Y dije que en realidad da igual la condición que pongamos en el bucle que lee de fichero. Podemos poner un "while (true)" si queremos, el caso es que cuando llegue a fin de fichero lanzará una excepción, y para entonces ya tendremos todas las figuras metidas en la lista.
[Jul 17, 2004 9:12:00 PM] Print Post    iiborra@dccia.ua.es Reportar mensaje ofensivo  Ir al inicio 
[Versión imprimible] [Publicar nuevo tema]