java中序列化流类的使用
一、序列化输出流类
功能:一个能将对象存储到文件中的输出流类,类名为ObjectOutputStream。
使用步骤:
1、创建字节输入流对象,例如FileOutputStream对象,构造方法中传递写入的文件或者文件路径和是否续写标志,当续写标志省略时,
默认为false,即将原有文件覆盖。
2、创建序列化输出流类对象,即ObjectOutputStream对象,构造方法中传递字节输入流对象,例如FileOutputStream对象。
3、调用对象写入数据的方法写入数据,例如write()、writeObject()、writeBoolean()等。如果需要写入对象,则需要调用writeObject()方法。
4、调用close方法释放资源。
注意事项:
1、建议写入数据时只调用一种写入数据的方法,否则读取数据时容易报错。
2、写入对象必须使用writeObject方法。
1.1 构造方法
功能:创建序列化输入流类对象,构造方法中传递字节输入流对象,例如FileOutputStream对象。
用法:ObjectOutputStream 对象名 = new ObjectOutputStream(字节输出流类对象);
示例:
//创建文件字节输入流对象
FileOutputStream fos = new FileOutputStream(“src\objectstream\a.txt”);
//创建序列化输出流类对象
ObjectOutputStream oos = new ObjectOutputStream(fos);
1.2 常用方法
1.2.1 writeObject()
功能:将对象写入文件的方法。
用法:ObjectOutputStream对象名.writeObject(对象)
示例:
//创建对象
Person p1 = new Person(“七七”, 500);
//调用writeObject方法写入数据
oos.writeObject(p2);
注意事项:当需要写入多个对象时有两种方法,第一种方法也是最常用的方法为将对象存储到集合(例如:ArrayList集合)中