21. ByteArrayInputStream & 22. ByteArrayOutputStream

想要查看此教程的目录请点击:Java IO教程目录贴地址


ByteArrayInputStream

ByteArrayInputStream类可以让你从一个字节数组来读取流,下面是一个例子:

byte[] bytes = ... //get byte array from somewhere.

InputStream input = new ByteArrayInputStream(bytes);

int data = input.read();
while(data != -1) {
  //do something with data

  data = input.read();
}
input.close();    

可以处理你保存在数组里面的数据,并且你有一个组件只能处理流。所以ByteArrayInputStream可以处理字节数组,并写到到流中。

ByteArrayOutputStream

Java IO API的ByteArrayOutputStream类允许您捕获写入到一个数组中的流的数据。你把数据写到ByteArrayOutputStream,写完之后,调用toByteArray()方法就可以以字节数组的形式获得所有的已写的数据。

ByteArrayOutputStream例子

下面是一个简单例子:

ByteArrayOutputStream output = new ByteArrayOutputStream();

//write data to output stream

byte[] bytes = output.toByteArray();

ByteArrayOutputStream应用的场景是,当你有一个组件需要把数据写出到OutputStream,但是你需要用到字节数组。

你可能感兴趣的:(21. ByteArrayInputStream & 22. ByteArrayOutputStream)