Java的I/O流

Java的I/O流共涉及40多个类,它们都是从如下4个抽象基类中派生出来的:

  • InputStream/Reader:所有的输入流的基类,前者是字节输入流,后者是字符输入流。
  • OutputStream/Writer:所有输出流的基类,前者是字节输出流,后者是字符输出流。

划分

按照流向分:输入流和输出流
按照操作单元分:字节流和字符流

在这里插入图片描述

按照流的角色分:节点流和处理流

在这里插入图片描述

Q:既然有了字节流,为什么还要有字符流呢?
A:字符流是由JVM将字节转换得到的,问题就出在这个过程还算是非常耗时的,并且,如果我们不知道编码类型就很容易出现乱码问题。所以,I/O流就干脆提供了一个直接操作字符的接口,方便我们平时对字符进行流操作。如果是音频、图片等媒体文件用字节流比较好,如果涉及到字符的话使用字符流比较好。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值