Java 使用套接字与输入流进行循环

Java 使用套接字与输入流进行循环,java,inputstream,Java,Inputstream,提到上面的问题,我只是想问一下,如何将此代码放入循环中,以便从客户端接收多个图像????我已经尝试过了,但它在第一次读取后不会在(count=is.read(bytes))>0停止。请帮忙我不确定自己是否完全理解你的问题,但我会尽力帮忙的。那么,您想要无限长的时间连接客户机/服务器?因此,尝试将服务器客户机和客户机本身都作为线程,然后将线程放入循环中。试试这个样品 connection = new Socket("IP",PORT); input = new DataInputS


提到上面的问题,我只是想问一下,如何将此代码放入循环中,以便从客户端接收多个图像????我已经尝试过了,但它在第一次读取后不会在(count=is.read(bytes))>0停止。请帮忙

我不确定自己是否完全理解你的问题,但我会尽力帮忙的。那么,您想要无限长的时间连接客户机/服务器?因此,尝试将服务器客户机和客户机本身都作为线程,然后将线程放入循环中。试试这个样品

connection = new Socket("IP",PORT);
        input = new DataInputStream(connection.getInputStream());
        output = new DataOutputStream(connection.getOutputStream());
        new Thread(new Runnable() {

        public void run(){
            while(true){
            try
            {
                System.out.println(">>" + input.readUTF());
            }
            catch(Exception e){
                try
                {
                    input.close();
                    output.close();
                    connection.close();
                }
                catch(Exception e2)
                {}
             }
            }
        }
        }).start(); 

        Scanner scan = new Scanner(System.in);

        while(true)
        {
            String data = scan.nextLine();
            output.writeUTF(data);
        }

这是客户端的代码。你还必须有客户端服务线程,接受所有的数据和发送回信息!希望我能帮上忙,因为我不确定我是否正确理解了这个问题。祝你好运

是的,我想在客户端和服务器之间建立无限时间的连接,即在while循环中
readUTF()。答案甚至问题中都没有提到这些。不应仅忽略异常,在这种情况下,必须单独捕获
EOFEException
。答案完全不正确。