为了账号安全,请及时绑定邮箱和手机立即绑定

java网络编程入门程序问题?

java网络编程入门程序问题?

RISEBY 2019-03-14 18:15:46
import java.io.*;import java.net.*;public class ChatServer {        public static void main(String []args) {                try {                        ServerSocket ss = new ServerSocket(6888);                        Socket so = ss.accept();                        BufferedReader br = new BufferedReader(new InputStreamReader(so.getInputStream()));                        BufferedReader brs = new BufferedReader(new InputStreamReader(System.in));                        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(so.getOutputStream()));                        String s = br.readLine();                        System.out.println("Client" + s);                      String c = null;                        while(s != "exit") {                                System.out.println("Client : " + s);                                    c = brs.readLine();                                bw.write(c);                                bw.flush();                                System.out.println("Server : " + c);                                s = br.readLine();                            }                          System.out.println("Chat Over");                        br.close();                        brs.close();                        bw.close();                }                catch(Exception e) {}           }   }我的一个小程序,上面是serverimport java.io.*;import java.net.*;public class ChatClient {        public static void main(String []args) {这是client,其实就是一个简单的,白痴的对话器,但是我怎么调试也不对,编译通过了,但是运行的时候一直卡在那里,感觉是io出问题了,大师们劳烦看看呗。非常感谢,实在是自己看不出来了。。。。。
查看完整描述

1 回答

?
aluckdog

TA贡献1847条经验 获得超7个赞

不是一定要用Print,你原来那么写也是可以的,只不过你传输的数据中得有回车符("\r\n")
你原来写的bw.write(c)是没有换行符的,所以改成bw.write(c+"\r\n"),服务端readLine()就能读到,readLine是按行读取的,没有"\r\n"的话就识别不了,读不出来数据;所以客户端其实是发送出去数据了,只不过服务端没有读出来

查看完整回答
反对 回复 2019-04-15
  • 1 回答
  • 0 关注
  • 339 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信