我想以存储对象的方法,采取对象序列化方式将user类数据写入文件中,然后采用对象反序列化方式把产品数据从文件中读取出来。
//保存User对象u的信息到文件
//输入信息
public static void saveObj(User us)
{
try
{
FileOutputStream fo = new FileOutputStream("D:\\javaio\\data.dat");
ObjectOutputStream so = new ObjectOutputStream(fo);
so.writeObject(us);
so.close();
}
catch(Exception e)
{
System.err.println(e) ;
}
}
//输出信息
public static void readObj(User us)
{
try
{
FileInputStream fi = new FileInputStream("D:\\javaio\\data.dat");
ObjectInputStream si = new ObjectInputStream(fi);
us = (User)si.readObject();
si.close();
System.out.println("身份证: " + us.idnum);
System.out.println("姓名: " + us.name);
System.out.println("联系电话: " + us.tel);
System.out.println("卡号: " + us.cardnum);
System.out.println("密码: " + us.passwd);
}
catch(Exception e)
{
System.err.println(e);
}
}
运行的时候却报了错。
解决方法是:在想要存储的对象所属的类后面加上一句“implements Serializable”
import java.io.Serializable;
public class User implements Serializable{
}