Socket编程中Io流的输出问题

「已注销」 2017-07-24 05:24:29
以下是服务器代码:
public static void main(String[] args) throws Exception {
try {
ServerSocket ss = new ServerSocket(6666);
Socket s = ss.accept();
System.out.println("连接成功!");
BufferedReader brread = new BufferedReader(new InputStreamReader(s.getInputStream()));
BufferedWriter bwwrite = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
BufferedReader brKerboard = new BufferedReader(new InputStreamReader(System.in));

String readMessage = brread.readLine(); //问题出在这里 除了打印流的print方法其他流的write方法这里都读不到就一直阻塞在这
System.out.println("Client:" + readMessage);

while(readMessage!="bye") {
String writeMessage = brKerboard.readLine();
bwwrite.write(writeMessage);
bwwrite.flush();
readMessage = brread.readLine();
System.out.println("Client:" + readMessage);
}

brread.close();

} catch (IOException e) {
System.out.println("服务器启动异常");
e.printStackTrace();
}

以下是客户端代码:

public static void main(String[] args) throws Exception, Exception {
try {
Socket s = new Socket("192.168.1.104", 6666);

System.out.println("请回复客户端:");
BufferedReader brKeyboard = new BufferedReader(new InputStreamReader(System.in));
BufferedReader brServer = new BufferedReader(new InputStreamReader(s.getInputStream()));
PrintWriter pw = new PrintWriter(new OutputStreamWriter(s.getOutputStream()));

String readKeyborad = brKeyboard.readLine();

while(readKeyborad != "bye") {
pw.write(readKeyborad);
pw.flush();
String readMessage = brServer.readLine();
System.out.println("Server:" + readMessage);
readKeyborad = brKeyboard.readLine();
}


pw.close();
brServer.close();
brKeyboard.close();
s.close();
} catch (UnknownHostException e) {
System.out.println("端口号错误");
e.printStackTrace();
} catch (IOException e) {
System.out.println("IO流出错");
e.printStackTrace();
}

这个程序是客户端说一句 服务器说一句那样 从客户端先开始说话 问题在于我只能使用打印流包装输出管道后而且必须调用打印流的print方法才能将信息从客户端发送出去 而我使用其他流像缓冲流或者还是打印流 我用write方法输出 服务器就接收不到 想了半天不太明白是什么原因
...全文
138 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

51,409

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧