本小节会简要概括 Java IO 中字节数组与过滤器的输入输出流,主要涉及以下 4 个类型的流:ByteArrayInputStream、ByteArrayOutPutStream、FilterInputStream、FilterOutputStream。
ByteArrayInputStream
ByteArrayInputStream 允许你从字节数组中读取字节流数据:
byte[] bytes = "zhaoxiaoming".getBytes();
InputStream input = new ByteArrayInputStream(bytes);
int data = input.read();
while(data != -1){
// do something with data
data = input.read();
}
input.close();
如果数据存储在数组中,ByteArrayInputStream 可以很方便的读取数据。如果你有一个 InputStream 变量,又想从数组中读取数据呢?只需要把字节数组传递给 ByteArrayInputstream 的构造函数,再把这个 ByteArrayInputStream 赋值给 InputStream 变量就可以了。
ByteArrayOutputStream
ByteArrayOutputStream 允许你以数组的形式获取写入到该输出流中的数据。
ByteArrayOutputStream out = new ByteArrayOutputStream()
// write data to output staeam
byte[] bytes = output.toByteArray();
本文介绍了 Java IO 中处理字节数组的两种流:ByteArrayInputStream 和 ByteArrayOutputStream 的用法。ByteArrayInputStream 可直接从字节数组读取数据,而 ByteArrayOutputStream 则用于将写入的数据以字节数组形式获取。
8827

被折叠的 条评论
为什么被折叠?



