下面的代码引发异常:
public class TestObject implements Serializable{
private static final long serialVersionUID = 1L;
public String value;
}
DbByteArrayOutputStream out = new DbByteArrayOutputStream();
ObjectOutputStream objOut = new ObjectOutputStream(out);
objOut.writeObject(objOut);
objOut.flush();
out.writeTo(file);
objOut.close();
out.close();
public class DbByteArrayOutputStream extends ByteArrayOutputStream {
public DbByteArrayOutputStream() {
super();
}
public synchronized void writeTo (RandomAccessFile file) throws IOException {
byte[] data = super.buf;
int l = super.size();
file.writeInt(l);
file.write(data, 0, l);
}
}为什么?谢谢。
发布于 2010-12-03 22:15:51
这就是问题:
ObjectOutputStream objOut = new ObjectOutputStream(out);
objOut.writeObject(objOut);您正在尝试将流序列化为自身。这完全说不通。我猜你的意思是:
objOut.writeObject(new TestObject());或者类似的东西。
https://stackoverflow.com/questions/4346346
复制相似问题