如何将OutputStream转换为InputStream?

问题:

我处于发展阶段,我有两个模块,一个我输出为OutputStream,第二个只接受InputStream。你知道如何将OutputStream转换为InputStream(反之亦然,我的意思是这样),我可以连接这两个部分?
谢谢

回答:

一个OutputStream是你写的数据。如果某个模块暴露了一个OutputStream,那么期望的是在另一端有一些正在读取的东西。
另一方面,露出InputStream的东西表明您将需要收听此流,并且将会显示可以读取的数据。
因此,可以将InputStream连接到OutputStream
 InputStream----read---> intermediateBytes[n] ----write----> OutputStream
有人认为,这就是IOUtils copy()的方法。去另一种方式是没有意义的…希望这样做有意义
 更新:
当然,我想到的越多,我可以看到这个实际上会如何。我知道一些提到的Piped输入/输出流的注释,但还有另一种可能性。
如果暴露的输出流是ByteArrayOutputStream,那么您可以随时通过调用toByteArray()方法获取完整内容。然后,您可以使用ByteArrayInputStream子类创建输入流包装器。这两个是伪流,它们基本上只包含一个字节数组。因此,以这种方式使用流,在技术上是可能的,但对我来说还是很奇怪的

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: How to convert OutputStream to InputStream?

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

3 + 4 =