繁体   English   中英

如何在 java 中处理两次输入 stream

[英]How to process input stream twice in java

我在公共 API 中有一个“InputStream”作为输入。 我需要读取输入 stream 两次。 有什么方法可以多次读取/处理 inputStream 吗? 如果是,有什么可能的警告?

public void doSomething(InputStream inputStream) {

doProcessInputStreamAPI_1 (inputStream)
doProcessInputStreamAPI_2 (inputStream)

}

我怎样才能实现上述流程? doProcessInputStreamAPI_1doProcessInputStreamAPI_2是独立的,一个不应影响另一个。

如果输入 stream 处理程序是独立的,则可以重构它们以处理从 stream 读取的数据:

public void doSomething(InputStream input) {

    int x;
    while ((x = input.read()) != -1) {
        doProcessInputStreamAPI_1(x);
        doProcessInputStreamAPI_2(x);
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM