Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/398.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.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 BufferedReader预处理输入_Java_Sockets_Telnet_Putty_Bufferedreader - Fatal编程技术网

Java BufferedReader预处理输入

Java BufferedReader预处理输入,java,sockets,telnet,putty,bufferedreader,Java,Sockets,Telnet,Putty,Bufferedreader,我尝试使用BufferedReader从套接字读取,如下所示 BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream())); while ((line = in.readLine()) != null) { } 我输入一个字符串,比如说“AUTH”,我得到line变量的值作为AUTH 这个问题有什么解决方案吗?这意味着不管出于什么原因,额外的数据都在套

我尝试使用BufferedReader从套接字读取,如下所示

BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
while ((line = in.readLine()) != null)
        {
        }
我输入一个字符串,比如说“AUTH”,我得到
line
变量的值作为AUTH


这个问题有什么解决方案吗?

这意味着不管出于什么原因,额外的数据都在套接字中。我猜您正在使用telnet连接到服务器,这就是问题所在


Java不会向真正存在的内容添加额外数据。

BufferedReader.readLine()用于包含“行”的输入,请确保正确提供输入。或者,您可以定义自己的终止符,然后使用
BufferedReader.read()
(如果您不知道输入长度,请使用while循环,如
while(in.read()!=-1)
或类似的内容)

bufferedReader预处理输入


不,没有。某些东西正在写入您不期望的额外输入。在本例中,是Telnet。Telnet是一种协议,它包含的不仅仅是文本行。

是的,我正在使用Telnet(Putty)。我同意,尝试使用而不是Telnet。对于Putty,主机名下有连接类型,请使用“raw”而不是“telnet”。也许您需要使用telnet客户端:?