从输出流创建输入流的最有效方法
2022-08-31 11:10:01
本页:http://blog.ostermiller.org/convert-java-outputstream-inputstream 介绍如何从输出流创建输入流:
new ByteArrayInputStream(out.toByteArray())
其他替代方法是使用管道流和新线程,这很麻烦。
我不喜欢将许多兆字节复制到新的内存字节数组的想法。有没有一个库可以更有效地做到这一点?
编辑:
根据Laurence Gonsalves的建议,我尝试了PipedStreams,结果发现它们并不难处理。下面是 clojure 中的示例代码:
(defn #^PipedInputStream create-pdf-stream [pdf-info]
(let [in-stream (new PipedInputStream)
out-stream (PipedOutputStream. in-stream)]
(.start (Thread. #(;Here you write into out-stream)))
in-stream))