我有两个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)就足够了。 代码示例也是受欢迎的,但不是必需的。
感谢和亲切的问候。