关于ObjectInputStream的问题
import java.io.*;
public class TestObjectIO {
public static void main(String args[]) throws Exception {
/*T t = new T("kkkkkkk");
t.k = 8;
FileOutputStream fos = new FileOutputStream("f:/testobjectio.txt", true);
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(t);
oos.flush();
oos.close();*/注释
FileInputStream fis = new FileInputStream("f:/testobjectio.txt");
ObjectInputStream ois = new ObjectInputStream(fis);
T tReaded = (T)ois.readObject();
T tReaded1 = (T)ois.readObject();
T tReaded2 = (T)ois.readObject();
System.out.println(tReaded.s + " " + tReaded.s + " " + tReaded.s + " " + tReaded.d);
}
}
class T
implements Serializable
{
T(String s)
{
this.s = s;
}
String s = null;
int i = 10;
int j = 9;
double d = 2.3;
transient int k = 15;
}
我用注释里的代码写了一个保存类的文件 里面保存了4个T类 将其注释掉后在下面想读出 可出现了如下错误
Exception in thread "main" java.io.StreamCorruptedException: invalid type code: AC
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readObject(Unknown Source)
at TestObjectIO.main(TestObjectIO.java:16)
请高手指导下~另对于ObjectInputStream封装的文件里的指针不太清楚 麻烦帮解释下 如何控制读取文件中类的顺序