Java ByteArrayInputStream类

本文概述

  • Java ByteArrayInputStream类声明
  • Java ByteArrayInputStream类构造函数
  • Java ByteArrayInputStream类方法
  • Java ByteArrayInputStream的示例
ByteArrayInputStream由两个词组成:ByteArray和InputStream。顾名思义, 它可用于读取字节数组作为输入流。
Java ByteArrayInputStream类包含一个内部缓冲区, 该缓冲区用于读取字节数组作为流。在此流中, 从字节数组中读取数据。
【Java ByteArrayInputStream类】ByteArrayInputStream的缓冲区根据数据自动增长。
Java ByteArrayInputStream类声明让我们看一下Java.io.ByteArrayInputStream类的声明:
public class ByteArrayInputStream extends InputStream

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类示例, 以读取字节数组作为输入流。
package com.srcmini; import java.io.*; public class ReadExample { public static void main(String[] args) throws IOException { byte[] buf = { 35, 36, 37, 38 }; // Create the new byte array input stream ByteArrayInputStream byt = new ByteArrayInputStream(buf); int k = 0; while ((k = byt.read()) != -1) { //Conversion of a byte into character char ch = (char) k; System.out.println("ASCII value of Character is:" + k + "; Special character is: " + ch); } } }

输出:
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: &

    推荐阅读