提到上面的问题,我只是想问一下我怎样才能把这段代码放在循环中,以便从客户端接收多个图像????我已经尝试过,但它不会在第一次读取后停止在 (count = is.read(bytes)) > 0 处。请帮忙
问问题
720 次
1 回答
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);
}
这是客户端的代码。您还必须有接受所有数据并发回信息的客户端服务线程!希望我对您有所帮助,因为我不确定我是否正确理解了这个问题。祝你好运!
于 2013-04-06T10:00:38.467 回答