如何在没有收到TCP套接字的情况下检查是否有来自TCP套接字的传入数据?

时间:2015-09-29 21:24:03

标签: java sockets tcp

基本上我需要做的是获取通知,然后继续使用类DataInputStream和方法read()接收数据。

问题是DataInputStream没有检查是否有东西需要读取的方法,而使用read()方法进行测试会干扰对read()的进一步调用。

我可以通过读取一个字节来进行测试并向其追加更多数据,但我想看看是否有更优雅的解决方案。

1 个答案:

答案 0 :(得分:2)

  

DataInputStream没有方法来检查是否有要阅读的内容

是的。您错过了available()方法,但它并不总是返回非零值,具体取决于您所连接的内容。

查看PushbackInputStream