我在ByteArrayOutputStream
中保存了数据流。现在,我想在FileInputStream
中读取它。我该怎么做?
这是我的输出流。
...
OutputStream out = new ByteArrayOutputStream();
...
现在怎么从
FileInputStream
中读取呢?我在ByteArrayOutputStream
中保存了数据流。现在,我想在FileInputStream
中读取它。我该怎么做?
这是我的输出流。
...
OutputStream out = new ByteArrayOutputStream();
...
FileInputStream
中读取呢?您可以使用ByteArrayInputStream
创建一个流对象。
InputStream is = new ByteArrayInputStream(bos.toByteArray());
然后从这个 InputStream
中读取。
如果您的接口仅接受 FileInputStream
,则该接口存在问题...
如果一个接口只能处理文件,则应该接受一个 File
,否则应该使用 InputStream
。
此外,如果使用线程,可以在线程之间直接使用 PipedInputStream
和 PipedOutputStream
。
FileInputStream
,那么这个接口就是有问题的。 - Ian Roberts