当前位置: 首页 > news >正文

Java中IO流类的体系

Java为我们提供了多种多样的IO流,我们可以根据不同的功能及性能要求挑选合适的IO流,如图所示,为Java中IO流类的体系。

从上图发现,很多流都是成对出现的,比如:

        FileInputStream/FileOutputStream,显然是对文件做输入和输出操作的。

        InputStream/OutputStream  字节流的抽象类

        Reader/Writer  字符流的抽象类

        FileInputOutStream/FileOutputStream  节点流:以字节为单位直接操作“文件”

        ByteArrayInputStream/ByteArrayOutputStream  节点流:以字节为单位直接操作“字节数组对象”

        ObjectInputStream/ObjectOutputStream  处理流:以字节为单位直接操作“对象”

        DataInputStream/DataOutputStream  处理流:以字节为单位直接操作“基本数据类型与字符串类型”

        FileReader/FileWriter  节点流:以字符为单位直接操作“文本文件”(注意:只能读写文本文件)

        BufferedReader/BufferedWriter  处理流:将Reader/Writer对象进行包装,增加缓存功能,提高读写效率

        BufferedInputStream/BufferedOutputStream  处理流:将InputStream/OutputStream对象进行包装,增加缓存功能,提高读写效率

        InputStreamReader/OutputStreamWriter  处理流:将字节流对象转化成字符流对象

        PrintStream  处理流:将OutputStream进行包装,可以方便地输出字符,更加灵活

http://www.lryc.cn/news/353678.html

相关文章:

  • 【调试笔记-20240521-Linux-编译 QEMU/x86_64 可运行的 OpenWrt 固件】
  • GitLab的原理及应用详解(六)
  • 【调和级数】100321. 优质数对的总数 II
  • Java SE入门及基础(54) 函数式接口
  • 轻松同步:将照片从三星手机传输到iPad的简便方法
  • MySQL查询某个字段含有字母数字的值
  • 通关!游戏设计之道Day14
  • 实现一个自定义 hook,用于强制刷新当前组件
  • 牛客热题:滑动窗口的最大值
  • Adobe产品安装目录修改
  • 时间(空间)复杂度(结构篇)
  • react记录部署
  • 【计算机毕业设计】基于SSM+Vue的校园美食交流系统【源码+lw+部署文档】
  • 「YashanDB迁移体验官」Mysql生产环境迁移至YashanDB数据库深度体验
  • qmt量化交易策略小白学习笔记第4期【qmt如何获取获取行情数据--内置python使用方法】
  • XXE(XML外部实体注入)
  • kafka 案例
  • 别被“涨价“带跑,性价比才是消费真理
  • GEE深度学习——使用Tensorflow进行神经网络DNN土地分类
  • 死锁示例(python、go)
  • Spring Cloud 面试题(五)
  • 源码编译安装LAMP
  • html5网页-浏览器中实现高德地图定位功能
  • C从零开始实现贪吃蛇大作战
  • 国内外相机在LabVIEW图像处理的对比
  • 第四十五天 | 322.零钱兑换
  • 3D 生成重建011-LucidDreamer 优化SDS过平滑结果的一种探索
  • ES6 笔记04
  • 中间件-------RabbitMQ
  • flink Data Source数据源