当前位置: 技术问答>java相关
writeObject()写字符串成功,但向量就不行,为什么?
来源: 互联网 发布时间:2015-01-10
本文导语: readObject()是报错为空值 | 我这样用可以的啊 Server: Vector v = new Vector(); v.add("a"); v.add("b"); v.add("c"); objOut.writeObject(v); Client: Vector v = (Vector)input.readObject(); System.out.println(v.toString()...
readObject()是报错为空值
|
我这样用可以的啊
Server:
Vector v = new Vector();
v.add("a");
v.add("b");
v.add("c");
objOut.writeObject(v);
Client:
Vector v = (Vector)input.readObject();
System.out.println(v.toString());//为[a, b, c]
Server:
Vector v = new Vector();
v.add("a");
v.add("b");
v.add("c");
objOut.writeObject(v);
Client:
Vector v = (Vector)input.readObject();
System.out.println(v.toString());//为[a, b, c]
|
Vector 肯定可以用readObject() 读回来的,因为它实现了Serializable 接口,但放在Vector 中的对象就不一定实现了Serializable 接口,因此不一定会序列化成功。不过你的例子中包含的是String 对象,是实现了Serializable 接口的,是肯定可以的。可以用下面例子测试一下:
import java.io.*;
import java.util.*;
public class TestObject {
public static void main(String[] args) {
try {
Vector v = new Vector();
v.add( "a" );
v.add( "b" );
v.add( "c" );
v.add( "e" );
v.add( "f" );
v.add( "g" );
System.out.println(v.toString());
ObjectOutputStream os = new ObjectOutputStream( new FileOutputStream("v.ser", true));
os.writeObject(v);
ObjectInputStream is = new ObjectInputStream( new FileInputStream("v.ser"));
Vector v1 = (Vector) is.readObject();
System.out.println(v1.toString());
} catch(Exception e) {
e.printStackTrace();
}
}
}
检查一下你想用writeObject() 的对象是否声明实现了Serializable 接口。
import java.io.*;
import java.util.*;
public class TestObject {
public static void main(String[] args) {
try {
Vector v = new Vector();
v.add( "a" );
v.add( "b" );
v.add( "c" );
v.add( "e" );
v.add( "f" );
v.add( "g" );
System.out.println(v.toString());
ObjectOutputStream os = new ObjectOutputStream( new FileOutputStream("v.ser", true));
os.writeObject(v);
ObjectInputStream is = new ObjectInputStream( new FileInputStream("v.ser"));
Vector v1 = (Vector) is.readObject();
System.out.println(v1.toString());
} catch(Exception e) {
e.printStackTrace();
}
}
}
检查一下你想用writeObject() 的对象是否声明实现了Serializable 接口。
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。