[英]How to process input stream twice in java
我在公共 API 中有一个“InputStream”作为输入。 我需要读取输入 stream 两次。 有什么方法可以多次读取/处理 inputStream 吗? 如果是,有什么可能的警告?
public void doSomething(InputStream inputStream) {
doProcessInputStreamAPI_1 (inputStream)
doProcessInputStreamAPI_2 (inputStream)
}
我怎样才能实现上述流程? doProcessInputStreamAPI_1和doProcessInputStreamAPI_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.