package m1;
import jdk.nashorn.internal.ir.IfNode;
import java.io.*;
import java.util.Arrays;
import java.util.concurrent.TransferQueue;
/**
* @author Yzt
* @version 1.0
* @date 2021/10/25 20:46
*/
public class IO1 {
public static void main(String[] args) {
// f1();//普通字节流读取
// f2();//高效字节流读取
// f3();//普通字符读取
// f4();//高效字符读取
// f5();//普通字节输出流
// f6();//高效字节输出流
// f7();//普通字符输出流
// f8();//高效字符输出流
/**
* 序列化是指把程序中给的Java对象,永久保存的磁盘当中,相当于写出的过程 对应out ObjectOutputStream
* 反序列化与之相反 对应in ObjectInputStream
* 注意:反序列化时,最好是一次序列化一次反序列化,因为若是有改动的话会导致UID不一致导致报错,或在类中指定uid,这样就不会报错了*/
f9();//测试序列化
f10();//测试反序列化
}
private static void f10() {
ObjectInputStream in=null;
try {
in=new ObjectInputStream(new FileInputStream("G:\\1.txt"));
Object o = in.readObject();
System.out.println(o);//student类需要tostring,要不然打印的是地址值
System.out.println("反序列化成功");
} catch (Exception e) {
System.out.println("反序列化失败");
e.printStackTrace();
}finally {
try {
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
private static void f9() {
ObjectOutputStream out=null;
try {
out=new ObjectOutputStream(new FileOutputStream("G:\
IO流的实现
最新推荐文章于 2023-12-09 12:05:51 发布