求求大家帮帮我,只剩下一天时间了!

sunshine_99 2009-04-13 05:13:56
我要做一个简易的聊天程序,客户端与服务器端要实现双向对话功能,基于控制台的

我写了两个类,可是服务端只能收到客户端发来的信息,我想让它也实现客户端收到服务端信息,怎么改呢?

高手一定要帮帮我~~~~~ 谢谢了

代码如下:
========服务端代码=========
public class MyServer extends Thread{
private Socket client;

public MyServer(Socket skt){
this.client = skt;
}

public void run(){
try{
BufferedReader in=new BufferedReader(new InputStreamReader(client.getInputStream()));
PrintWriter out=new PrintWriter(client.getOutputStream());
while(true){
String str=in.readLine();
System.out.println(str);
out.println("服务端已收到!");
out.flush();
if(str.equals("end")){
break;
}
}
client.close();
}catch(IOException ioe){
System.out.println("ioexception happened!");
}
}
public static void main(String[] args) throws IOException {
ServerSocket server=new ServerSocket(5678);
while(true){
MyServer user = new MyServer(server.accept());
user.start();
}
}
}

======客户端代码========
public class MyClient {

static Socket server;

public static void main(String[] args)throws Exception {
server=new Socket(InetAddress.getLocalHost(),5678);
BufferedReader in=new BufferedReader(new InputStreamReader
(server.getInputStream()));
PrintWriter out=new PrintWriter(server.getOutputStream());
BufferedReader wt=new BufferedReader(new InputStreamReader
(System.in));

while(true){
String str=wt.readLine();
out.println(str);
out.flush();
if(str.equals("end")){
break;
}
System.out.println(in.readLine());
}
server.close();
}
}

先可以不考虑多线程,先要实现双向通讯就好。

会的帮帮我!

另外,我写了一个双向通讯的,可是运行没异常但是对方都收不到信息,

具体问题请点击http://topic.csdn.net/u/20090413/15/aad62559-c6fb-42fc-a97e-25a9eda5663f.html看看

谢谢了。。。

郁闷的都想撞豆腐了!
...全文
58 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zm_hs 2009-04-13
  • 打赏
  • 举报
回复
如果在一台电脑上测试的话,。console这里是需要进行切换的。。一个是服务端的,一个是客户端的
zm_hs 2009-04-13
  • 打赏
  • 举报
回复
要新建一个console
zm_hs 2009-04-13
  • 打赏
  • 举报
回复
控制台输入的问题吧

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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