最佳答案
翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳翻译: 奇芳 http://blog.ostermiller.org/convert-java-outputstream-inputstream 描述如何从 OutputStream 创建 InputStream:
new ByteArrayInputStream(out.toByteArray())
其他选择是使用 PipedStreams 和新线程,这是繁琐的。
我不喜欢在内存中将许多兆字节复制到新的字节数组中。 有没有一个图书馆能更有效地做到这一点?
编辑:
根据 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))