Java中提供了一种序列化操作的方式,用一个字节序列化来表示一个对象,该字节序列化中保存了【对象的属性】,【对象的类型】和【对象的数据】。把字节序列化保存到文件中,就可以做到持久化保存数据内容。
从文件中读取字节序列化数据,可以直接得到对应的对象。
将对象数据序列化,保存到文件中
构造方法 Constructor
ObjectOutputStream(OutputStream out);
输出字节流对象作为当前方法的参数
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;
public class Demo1 {
public static void main(String[] args) {
ObjectOutputStream objectOutputStream = null;
try {
objectOutputStream = new ObjectOutputStream(new FileOutputStream("D:/aaa/person.txt"));
// 序列化对象,并且写入到文件中
objectOutputStream.writeObject(new Person(1, "骚磊", 16));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
if (objectOutputStream != null) {
try {
objectOutputStream.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
从文件中读取被序列化之后的字节数据,提供反序列化操作,得到一个对象。
构造方法 Constructor
ObjectInputStream(InputStream in);
需要提供一个字节输入流对象来进行操作
【序列化注意事项】