ByteArrayInputStream允许从字节数组中读取字节流数据,下面是个简单例子:
byte[] bytes = ... // 从任何地方获取字节数组
InputStream input = new ByteArrayInputStream(bytes);
int data = input.read();
while(data != -1) {
// 操作数据
data = input.read();
}
input.close();
如果字节数据是存在数组,用ByteArrayInputStream操作是很有用的。但只能被组件处理为InputStream。因此,ByteArrayInputStream可以包装字节数组和将它变成一个流。
请注意,为了清晰,这里忽略了必要的异常处理。想了解更多异常处理的信息,请参考Java IO异常处理。