Java ByteArrayInputStream 类

2024 年 8 月 29 日 | 阅读 2 分钟

ByteArrayInputStream 由两个词组成:ByteArray 和 InputStream。顾名思义,它可以用于将字节 数组 读取为输入流。

Java ByteArrayInputStream 包含一个内部缓冲区,用于将字节数组读取为流。在此流中,数据从字节数组读取。

ByteArrayInputStream 的缓冲区会根据数据自动增长。


Java ByteArrayInputStream 类声明

让我们看一下 Java.io.ByteArrayInputStream 类的声明


Java ByteArrayInputStream 类构造函数

构造函数描述
ByteArrayInputStream(byte[] ary)创建一个新的字节数组输入流,它使用ary 作为其缓冲区数组。
ByteArrayInputStream(byte[] ary, int offset, int len)创建一个新的字节数组输入流,它使用ary 作为其缓冲区数组,该数组可以从一个数组中读取多达指定的len 字节数据。

Java ByteArrayInputStream 类方法

方法描述
int available()用于返回可以从此输入流中读取的剩余字节数。
int read()用于从此输入流中读取下一个字节。
int read(byte[] ary, int off, int len)用于从此输入流中的字节数组读取多达 len 字节的数据。
boolean markSupported()用于测试输入流的标记和重置方法。
long skip(long x)用于从输入流中跳过 x 个字节的输入。
void mark(int readAheadLimit)用于在流中设置当前的标记位置。
void reset()用于重置字节数组的缓冲区。
void close()用于关闭 ByteArrayInputStream。

Java ByteArrayInputStream 示例

让我们看一个简单的 Java ByteArrayInputStream 类的示例,用于将字节数组读取为输入流。

输出

ASCII value of Character is:35; Special character is: #
ASCII value of Character is:36; Special character is: $
ASCII value of Character is:37; Special character is: %
ASCII value of Character is:38; Special character is: &