字节流和字符流

本文介绍了Java中的字节流和字符流的概念,包括流的流动方向、字节流与字符流的基本单位、常用的类以及它们的区别。字节流处理基本单位为字节,适用于所有类型的文件数据,而字符流处理基本单位为Unicode码元,主要用于文本数据。Java中InputStream和OutputStream是字节输入输出流的基类,Reader和Writer则是字符输入输出流的基类,各自有多个子类用于具体操作。
摘要由CSDN通过智能技术生成

字节流和字符流

了解字节流和字符流之前我们先了解什么是流:

什么是流
Java中的流是对字节序列的抽象,我们可以想象有一个水管,只不过现在流动在水管中的不再是水,而是字节序列。和水流一样,Java中的流也具有一个“流动的方向”,通常可以从中读入一个字节序列的对象被称为输入流;能够向其写入一个字节序列的对象被称为输出流。

1.字节流
一切皆为字节:
一切文件数据(文本、图片、视频等)在存储时,都是以二进制数字的形式保存,都一个一个的字节,那么传输时一样如此。所以,字节流可以传输任意文件数据。在操作流的时候,我们要时刻明确,无论使用什么样的流对象,底层传输的始终为二进制数据。

Java中的字节流处理的最基本单位为单个字节,它通常用来处理二进制数据。Java中最基本的两个字节流类是InputStream和OutputStream,它们分别代表了组基本的输入字节流和输出字节流。InputStream类与OutputStream类均为抽象类,我们在实际使用中通常使用Java类库中提供的它们的一系列子类。

FilterInputStream: 包含其他一些输入流,能够对读取的文件进行操作
构造方法:
FilterInputStream(InputStream in): 创建一个读取文件的对象,并告诉该对象要操作的文件是谁, 可以直接new FIle对象
常用方法:
read(): 从此输入流中读取下一个数据字节。
read(byte[] b) : 从此输入流一次性读取指定容器的数据
close():关闭资源

OutputStream:
字节输出流,它也是超类&#

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值