我有一个包含 200MB 数据的 FileInputStream。我必须从输入流中检索字节。
我正在使用下面的代码将 InputStream 转换为字节数组。
private byte[] convertStreamToByteArray(InputStream inputStream) {
ByteArrayOutputStream bos = new ByteArrayOutputStream();
try {
int i;
while ((i = inputStream.read()) > 0) {
bos.write(i);
}
} catch (IOException e) {
e.printStackTrace();
}
return bos.toByteArray();
}
在将如此大的数据转换为字节数组时,我遇到了 OutOfMemory 异常。
请让我知道将 InputStream 转换为字节数组的任何可能的解决方案。