问题描述
- java客户端和服务器通信 1C
- try{
Socket s=new Socket(""127.0.0.1""9997);
System.out.println(s);InputStreamReader isr=new InputStreamReader(s.getInputStream()); br=new BufferedReader(isr);//接受客户端的消息 pw =new PrintWriter(s.getOutputStream()true); while(true){ String kehuduan=br.readLine(); wb.append(""服务器说:"" +kehuduan+""rn""); } }catch (Exception a){} 问题是while(true)循环中String kehuduan=br.readLine() 怎样不断读取消息的? 因为程序中没有地方改变br,总觉得每次循环的结果都是一样的
解决方案
br不变,消息变 while(true){ String kehuduan=br.readLine();//这里如果客户端没有输入消息的话,这里是等待的,不往下执行,客户端有消息发送过来才往下执行。执行下面代码后,又是while循环执行到这里又是等待客户端输入,也就是每次都是客户端输入的消息。 wb.append(""服务器说:"" +kehuduan+""rn""); }
解决方案二:
while ((kehuduan =br.readLine()) != null) {
wb.append(""服务器说:"" +kehuduan+""rn"");
}
时间: 2025-01-07 16:51:02