import java.io.*;
public class Ftest
{
public static void main(String[] args)throws Exception
{
ObjectInputStream in=new ObjectInputStream(new FileInputStream("d:\\a.dat"));
ObjectOutputStream out=new ObjectOutputStream(new FileOutputStream("d:\\a.dat"));
Xlh a=new Xlh();
out.writeObject(a);
Xlh b=(Xlh)in.readObject();
System.out.print(b.name+b.age);
in.close();
out.close();
}
}class Xlh implements Serializable{
String name="aaa";
String age="22";
}出现异常是:Exception in thread "main" java.io.EOFException
at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2232)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2698)
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:750)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:268)
at Ftest.main(Ftest.java:21)想问下错误原因是什么怎么改 谢谢啦
public class Ftest
{
public static void main(String[] args)throws Exception
{
ObjectInputStream in=new ObjectInputStream(new FileInputStream("d:\\a.dat"));
ObjectOutputStream out=new ObjectOutputStream(new FileOutputStream("d:\\a.dat"));
Xlh a=new Xlh();
out.writeObject(a);
Xlh b=(Xlh)in.readObject();
System.out.print(b.name+b.age);
in.close();
out.close();
}
}class Xlh implements Serializable{
String name="aaa";
String age="22";
}出现异常是:Exception in thread "main" java.io.EOFException
at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2232)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2698)
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:750)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:268)
at Ftest.main(Ftest.java:21)想问下错误原因是什么怎么改 谢谢啦
out.writeObject(a);
out.close();
//写入流打开了以后要先关闭,才能打开读出流读出数据的
Xlh b=(Xlh)in.readObject();
System.out.print(b.name+b.age);
in.close();
Xlh a=new Xlh();
out.writeObject(a);
out.close();
ObjectInputStream in=new ObjectInputStream(new FileInputStream("d:\\a.dat")); Xlh b=(Xlh)in.readObject();
System.out.print(b.name+b.age);
in.close();
import java.io.*;public class Ftest {
public static void main(String[] args) throws Exception {
ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(
"d:\\a.dat")); Xlh a = new Xlh();
out.writeObject(a);
out.close();
ObjectInputStream in = new ObjectInputStream(new FileInputStream(
""));
Xlh b = (Xlh) in.readObject();
System.out.print(b.name + b.age);
in.close(); }
}class Xlh implements Serializable {
String name = "aaa"; String age = "22";
}
代码顺序不对,在创建in的时候还有没d:\\a.dat文件,还有在写完对象后out应该关闭,然后再创建in对象