Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java TCP套接字侦听器_Java_Tcp - Fatal编程技术网

Java TCP套接字侦听器

Java TCP套接字侦听器,java,tcp,Java,Tcp,我有一个非常简单的TCP套接字侦听器。当字符为null或#时,我想停止接收数据 未在代码流动时关闭套接字。只有当我从超级终端关闭时,套接字才会关闭。我错过了什么?因为readLine()只在流结束时返回null,这仅在对等方关闭连接时在TCP套接字中发生 。。。很明显,您永远不会发送包含#和行终止符的行。1。“#”是否由服务器发送?2.服务器是否结束该行?3.服务器是否关闭了连接?除非您想读一行,否则不要使用readLine。我可以用什么来代替readLine?您是否考虑过咨询Javadoc?还

我有一个非常简单的TCP套接字侦听器。当字符为
null
#
时,我想停止接收数据

未在代码流动时关闭套接字。只有当我从超级终端关闭时,套接字才会关闭。我错过了什么?

因为
readLine()
只在流结束时返回null,这仅在对等方关闭连接时在TCP套接字中发生


。。。很明显,您永远不会发送包含
#
和行终止符的行。

1。“#”是否由服务器发送?2.服务器是否结束该行?3.服务器是否关闭了连接?除非您想读一行,否则不要使用
readLine
。我可以用什么来代替readLine?您是否考虑过咨询Javadoc?还有三种读取方法。远程终端发送传感器数据。例如,字符串为$353323058181636,EV,D,T,567888.9,+12C,FFFFE000#其中$是起始字符,而#是数据字符的结尾。每一包每分钟都有。在我的例子中,当数据结束时,套接字需要关闭套接字。因此,您正在读取行,但它没有发送行。所以不要使用
readLine()
while ((line = in.readLine()) != null && !line.equals("#")){
    tcpData = tcpData + line;
    }
server.close();