如何从另一个中减去Inputstream?

时间:2017-11-01 12:18:33

标签: java groovy compare inputstream

我有两个Socketconnections。第一个我只是通过InputStream监听并获取数据:

> NormalMessage a
> NormalMessage b
> NormalMessage c
> NormalMessage d

第二个是相同的,但我也发送请求并在其他消息中获得答案:

> NormalMessage a
< request 1
> Answer for 1a
> Answer for 1b
> Answer for 1c
> NormalMessage b
< request 2
> Answer for 2a
> Answer for 2b
> Answer for 2c
> Answer for 2d
> NormalMessage c
> NormalMessage d

我想知道的是InputStream的哪些行是我的请求的答案。在我看来,我没有其他方式可以打开连接并比较Streams。 在我看来是这样的:

InputStream answerStream = new MySpecialInputStream(basicStream, substractedStream);

answerStream只包含:

> Answer for 1a
> Answer for 1b
> Answer for 1c
> Answer for 2a
> Answer for 2b
> Answer for 2c
> Answer for 2d

有什么想法吗?

我正在寻找这个问题的基本概念/想法。 在我目前的情况下,它是用groovy / java编写的,并且两个InputStream都是BufferedReader - 所以atm基于字符串行的解决方案(如MySpecialBufferedReader)就足够了。 代码示例也是受欢迎的,但不是必需的。

感谢和亲切的问候。

0 个答案:

没有答案