我正在尝试使用Java在newtork上创建一个接收JPG图像的服务器。
isr = socket.getInputStream();
BufferedImage img = ImageIO.read(isr);
我想完成阅读,但保持套接字连接。 ImageIO仅在关闭连接时停止。当我两次发送相同的图像时它也会停止。
答案 0 :(得分:-1)
ImageIO.read应继续从输入流中读取,直到它具有整个文件,此时它将停止读取。然后调用者有责任在输入流上调用close。
您不会将任何数据从客户端发送到服务器,以告诉您已完成阅读。只需关闭连接即可。
如果服务器发送两次相同的图像,或发送两个不同的图像,则必须建立两个套接字连接,或使用其他方法读取数据。据我所知,ImageIO.read无法读取两个图像。