7.29总结,对象流,缓冲流

一、ObjectInputStream、ObjectOutputStream

        进行对象序列化和反序列化:将Java对象按照结构转换为一组字节过程,可以将类的参数保存为文件。或者读取文件获得类的参数。

        String name="小苍老师";
        int age=24987;
        String gender="男";
        String[] otherInfo={"技术好","启蒙老师"};
        Person person=new Person(name,age,gender,otherInfo);

        FileOutputStream fo=new FileOutputStream("Objfile.txt");
        ObjectOutputStream ofo=new ObjectOutputStream(fo);
//      类必须实现implements Serializable接口
        ofo.writeObject(person);
        ofo.close();

        将Person的参数保存到Object.txt文件中。

        通过ObjectInputStream读取文件

        File file=new File("Objfile.txt")  ;
        FileInputStream fi=new FileInputStream(file);
        ObjectInputStream ofi=new ObjectInputStream(fi);

        System.out.println(ofi);//java.io.ObjectInputStream@3b9a45b3

        Object o=ofi.readObject();

        System.out.println(o);//Person{name='小苍老师', age=24987, gender='男', otherInfo=[技术好, 启蒙老师]}

        Person person=(Person)o;
        System.out.println(person);
//Person{name='小苍老师', age=24987, gender='男', otherInfo=[技术好, 启蒙老师]}

        readObject的返回值为Object,需要将其转变为Person类,再做接受。3个不同的输出语句,表示为:1、Object   2、字符串  3、Person的参数列表。

二、二进制和字符串转换

        将字符串转换为二进制数byte[] bytes1 = str1.getBytes(StandardCharsets.UTF_8);

        将二进制数转换为字符串String s = new String(bytes, StandardCharsets.UTF_8);

三、BufferedOutputStream、BufferedInputtStream

        缓冲流读写,主要作用于快速的读写操作,块写只发生在基本数据流中,不发生在高级流中,因为高级流默认的数组有1024*8的大小,也可以自定义。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值