你是指哪个类啊? 写入的是Integer啊

解决方案 »

  1.   

    ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("num.txt"));
    不论之前num.txt中是否有内容,这行代码会把num.txt截短成4个字节,准备后续的写入。
    此时,如果没有oos.writeObject()来先写入一个Object到文件中,ois.readObject()是读不到内容的,不但读不到,而且会抛出EOFException,因为一直读到文件尾部预想的内容也没出现。
    而如果先执行了oos.writeObject(),则文件中已经有了内容,自然ois.readObject()就能顺利执行不报异常了。