我有一堆ByteArrayOutputstreams
,在这些流上可以根据特定工作流程的不同部分编写 pdf 报告。我使用 IText 来完成此任务。现在,最后我想将所有这些单个 ByteArrayOutputstream 分组为一个更大的 ByteArrayOutputstream ,以便将所有 pdf 报告分组在一起。
我查看了 Apache Commons 库,但找不到任何有用的东西。
我知道的一种方法是将这些 ByteArrayOutputstreams 转换为 byte[] ,然后使用 System.arraycopy 将它们复制到更大的字节[]
。问题是我必须预先声明结果 byte[]
的大小,这使得它不理想。
还有其他方法可以复制/附加到/连接我可能错过的 ByteArrayOutputStreams 吗?
最佳答案
您可以使用 List<Byte[]>
为了那个原因。您可以随时将字节添加到列表中。
List<Byte[]> listOfAllBytes = new ArrayList<Byte[]>;
ByteArrayOutputstreams byteArray = //...
listOfAllBytes.add(byteArray.toByteArray);
最后,您可以获得完整的字节数组。
关于java - 添加 ByteArrayOutputStreams,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11428015/