A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Teemo_Mann 中级黑马   /  2014-4-19 21:18  /  1026 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

我使用客户端发送Bye但是服务端接收到的

  1.                         while((str = scanner.next()) != null){               
  2.                                 pw.println("我是客戶端:" + str);
  3.                                 pw.flush();
  4.                                 if(str.equals("bye"))
  5.                                         break;
  6.                                 str = br.readLine();
  7.                                 System.out.println(str);
  8.                         }
复制代码

使用服务端接受
  1.                         while((str = br.readLine()) != null){
  2.                                 System.out.println(str);
  3.                                 if(str.equals("<font color="#ff0000">bye</font>")){        <font color="#ff0000"> //这个地方我用"我是客户端:bye"或者"我是客户端:bye\r\n"或者"我是客户端:bye\n"都不行,那这里应该填什么才能退出呢</font>
  4.                                         System.out.println("客户端退出了");
  5.                                         break;
  6.                                 }
  7.                                 str = scanner.next();
  8.                                 pw.println("我是服务端:" + str);
  9.                                 pw.flush();
  10.                         }
复制代码



评分

参与人数 1技术分 +1 收起 理由
itpower + 1

查看全部评分

2 个回复

倒序浏览
  1.                         while((str = br.readLine()) != null){
  2.                                 System.out.println(str);
  3.                                 if(str.equals("bye")){   //这个地方我用"我是客户端:bye"或者"我是客户端:bye\r\n"或者"我是客户端:bye\n"都不行,那这里应该填什么才能退出呢
  4.                                         System.out.println("客户端退出了");
  5.                                         break;
  6.                                 }
  7.                                 str = scanner.next();
  8.                                 pw.println("我是服务端:" + str);
  9.                                 pw.flush();
  10.                         }
复制代码


请注意你的代码:
str.equals("bye"),而br.readLine();读取的是一行,如果你写的是//这个地方我用"我是客户端:bye"或者"我是客户端:bye\r\n"或者"我是客户端:bye\n"
那么 str=这个地方我用"我是客户端:bye"或者"我是客户端:bye\r\n"或者"我是客户端:bye\n",而不是等于bye。OK?
单独用bye作为一行,就可以推出了

评分

参与人数 1技术分 +1 收起 理由
itpower + 1

查看全部评分

回复 使用道具 举报
李东梁 发表于 2014-4-19 21:36
请注意你的代码:
str.equals("bye"),而br.readLine();读取的是一行,如果你写的是//这个地方我用"我是 ...

我怎么看不懂你写的.我的代码当然是str.equals("我是客户端:bye\r\n");  这样的啊,只不过那上面做一个演示罢了,三种我都equals过了,都不行啊
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马