我在实体类里面定义了一个注册账号的方法,在写入文件的时候不知道该怎么往里存啊,请大神给指点指点!!
public void register(String uname,String pwd){
Register register=new Register();
try {
ObjectOutputStream oos=new ObjectOutputStream(new BufferedOutputStream(new FileOutputStream("d:\\55.txt")));
oos.write(register.setUserName(uname));
oos.write(register.setPwd(pwd));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
------解决思路----------------------
ObjectOutputStream是输出对象流的
不能序列化类属性,除非你的setXXX返回的是可序列的对象
首先你的对象必须可以被序列化,继承serializable接口
然后定义一个对象,并初始化
调用对象输出流的方法writeObject(Object object)即可存储
反序列化直接读取即可
至于怎么序列化成二进制这个不用你操心
或者用其他输出流直接存类属性也行
------解决思路----------------------
public void register(String uname,String pwd){
Register register=new Register(); //前提:Register可以被序列化
register.setUserName(uname);
register.setPwd(pwd);
try {
ObjectOutputStream oos=new ObjectOutputStream(new BufferedOutputStream(new FileOutputStream("d:\\55.txt")));
oos.writeObject(register);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally{
oos.close();
}
}