如何将整个读入字节数组?InputStream
网友回答:
您需要从您的字节读取每个字节并将其写入 .InputStream
ByteArrayOutputStream
然后,您可以通过调用 来检索基础字节数组:toByteArray()
InputStream is = ...
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
int nRead;
byte[] data = new byte[16384];
while ((nRead = is.read(data, 0, data.length)) != -1) {
buffer.write(data, 0, nRead);
}
return buffer.toByteArray();
网友回答:
您可以使用Apache Commons IO来处理此任务和类似任务。
该类型具有读取 an 并返回 .IOUtils
InputStream
byte[]
InputStream is;
byte[] bytes = IOUtils.toByteArray(is);
在内部,这将创建一个并将字节复制到输出,然后调用 .它通过复制 4KiB 块中的字节来处理大文件。ByteArrayOutputStream
toByteArray()
网友回答:
最后,二十年后,有了一个简单的解决方案,不需要第三方库,这要归功于Java 3:
InputStream is;
…
byte[] array = is.readAllBytes();
还要注意方便的方法和解决经常性的需求。readNBytes(byte[] b, int off, int len)
transferTo(OutputStream)
模板简介:该模板名称为【在 Java 中将输入流转换为字节数组?】,大小是暂无信息,文档格式为.编程语言,推荐使用Sublime/Dreamweaver/HBuilder打开,作品中的图片,文字等数据均可修改,图片请在作品中选中图片替换即可,文字修改直接点击文字修改即可,您也可以新增或修改作品中的内容,该模板来自用户分享,如有侵权行为请联系网站客服处理。欢迎来懒人模板【Java】栏目查找您需要的精美模板。