如何将整个读InputStream
入字节数组?
你可以使用Apache Commons IO处理此任务和类似任务。
该IOUtils
类型具有静态方法来读取InputStream
和返回byte[]
。
InputStream is;
byte[] bytes = IOUtils.toByteArray(is);
在内部,这会创建一个ByteArrayOutputStream
并将字节复制到输出中,然后调用toByteArray()
。它通过复制4KiB块中的字节来处理大型文件。
分享改善这个答案
问题内容: 我的背景是.net,我刚接触Java。我正在为公司的Java团队做一些工作,架构师需要我实现采用InputStream(java.io)对象的方法。为了实现该方法的目的,我需要将其转换为字节数组。是否有捷径可寻? 问题答案: 最简单的方法是创建一个new ,将字节复制到其中,然后调用:
问题内容: 我们可以将字节数组转换为Java中的InputStream吗?我一直在上网,但找不到。 我有一个具有InputStream作为参数的方法。 我拥有的InputStream 是base64编码的,因此我不得不使用 现在如何再次转换为? 问题答案: 用途:
问题内容: 假设我有一个包含文本数据的文件,并且想将其转换为(例如,这样我就可以将流的内容写入日志文件)。 将并将其转换为的最简单方法是什么? 问题答案: 这是我的版本
问题内容: 给定一个字符串: 如何将其转换为? 问题答案: 像这样: 请注意,这假设你需要一个,它是一个字节流,它表示编码为UTF-8的原始字符串。 对于小于7的Java版本,请替换为。
问题内容: 我有以下代码,我试图通过测试,但似乎无法理解Java世界中各种编码形式。 我想我的问题是:将任意字节的字节数组转换为Java字符串,然后将同一Java String转换为另一个字节数组的正确方法是什么,该字节数组将具有与原始字节相同的长度和相同的内容数组? 问题答案: 尝试特定的编码: ideone链接
我想将文件输入流转换为S3ObjectInputStream。 这是我当前的代码: 然而,它给出了错误: