Excepción de Java Mysterious EOF con readObject

El siguiente código produce un EOFException. ¿Porqué es eso?

public static Info readInfoDataFromFile(Context context) {
    Info InfoData = null;
    FileInputStream fis = null;
    ObjectInputStream ois = null;
    Object object = null;

    if (context.getFileStreamPath("InfoFile.dat").exists()) {
        try {
            fis = context.openFileInput("InfoFile.dat");
            ois = new ObjectInputStream(fis);
            Object temp;
            try {
                // here it throws EOF exception in while loop 
                while ((temp = ois.readObject()) != null) {
                    object = temp;
                }
            } catch (NullPointerException npe) {
                npe.printStackTrace();
            } catch (EOFException eof) {
                eof.printStackTrace();
            } catch (FileNotFoundException fnfe) {
                fnfe.printStackTrace();
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                if (ois != null) {
                    ois.close();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
            try {
                if (fis != null) {
                    fis.close();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }

StackTrace:

03-07 14:29:01.996: WARN/System.err(13984): java.io.EOFException
03-07 14:29:01.996: WARN/System.err(13984):     at java.io.DataInputStream.readByte(DataInputStream.java:131)
03-07 14:29:01.996: WARN/System.err(13984):     at java.io.ObjectInputStream.nextTC(ObjectInputStream.java:628)
03-07 14:29:01.996: WARN/System.err(13984):     at java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:907)
03-07 14:29:01.996: WARN/System.err(13984):     at java.io.ObjectInputStream.readObject(ObjectInputStream.java:2262)03-07 14:29:01.996: WARN/System.err(13984):     at java.io.ObjectInputStream.readObject(ObjectInputStream.java:2217)
03-07 14:29:01.996: WARN/System.err(13984):     at 
Respuesta 1

Tenía el mismo misterioso EOFExceptiony era solo el camino de la Clase de Objeto para enviar a través ObjectOutputStreamdel ObjectInputStream. Deben tener la misma ruta (el mismo nombre de paquete y, por supuesto, el mismo nombre de clase).

Respuesta: 2

¿Alguien sabe cómo solucionar este problema? No se puede completar la instalación porque no se pudieron encontrar uno o más elementos necesarios. Software que se está instalando: JBoss Runtime Drools Detector 6.3.0. Final ...

A menudo, en las tareas ANT, verá "**" usado de manera similar a la siguiente: <copy todir = "/ something"> <fileset dir = "/ source"> <exclude name = "** / *. Sql" /> < / fileset> </copy> ...

Estaba haciendo un simple programa de herencia, sin embargo, me confundí al hacer este programa. Aquí está el programa simple: class Box {double width; doble altura; doble profundidad Caja(...

En Java, ¿por qué la instancia de una palabra clave y no un método? public static void main (String args []) {Simple1 s = new Simple1 (); System.out.println (s instanceof Simple); // cierto }