java实现聊天室功能(包含全部代码,有界面)

java实现聊天室功能(包含全部代码,有界面)

ID:30210337

大小:23.91 KB

页数:18页

时间:2018-12-27

java实现聊天室功能(包含全部代码,有界面)_第1页
java实现聊天室功能(包含全部代码,有界面)_第2页
java实现聊天室功能(包含全部代码,有界面)_第3页
java实现聊天室功能(包含全部代码,有界面)_第4页
java实现聊天室功能(包含全部代码,有界面)_第5页
资源描述:

《java实现聊天室功能(包含全部代码,有界面)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、服务器端代码:importjava.net.*;importjava.io.*;importjava.util.*;importjava.util.concurrent.*;importjavax.swing.*;publicclassServer{privatestaticfinalintPORT=6666;G_Menugm=newG_Menu();privateServerSocketserver;publicArrayListlist;publicstaticStringu

2、ser;publicstaticArrayListlist1=newArrayList();//定义用户集合publicUseruu;publicServer(Stringuser){this.user=user;}publicvoidgetServer(){list=newArrayList();try{server=newServerSocket(PORT);System.out.println("服务器启动,开始监听......");while(tr

3、ue){Socketclient=server.accept();//接收客户端线程PrintWriterwriter=newPrintWriter(client.getOutputStream());list.add(writer);Threadt=newThread(newChat(client));t.start();}}catch(Exceptionex){ex.printStackTrace();}}publicstaticvoidmain(String[]args){newServer(use

4、r).getServer();}classChatimplementsRunnable{Socketsocket;privateBufferedReaderbr;privateStringmsg;privateStringmssg="";publicChat(Socketsocket){try{this.socket=socket;}catch(Exceptionex){ex.printStackTrace();}}publicvoidrun(){try{br=newBufferedReader(newI

5、nputStreamReader(socket.getInputStream()));while((msg=br.readLine())!=null){if(msg.equals("1008611"))//匹配字符串显示好友列表{msg=br.readLine();String[]st=msg.split(":");//将用户信息跟消息分隔开uu=newUser(st[0],st[1],socket);//将用户信息添加到User对象中list1.add(uu);//将对象添加到用户集合Iterator<

6、User>it=Server.list1.iterator();//遍历用户集合while(it.hasNext()){Useruse=it.next();msg=use.getName()+"("+use.getSex()+"):";mssg+=msg;//将所有的用户信息连接成一个字符串}sendMessage("1008611");//显示好友列表匹配标识sendMessage(mssg);//群发消息}elseif(msg.equals("10010"))//显示说话消息{msg=br.readL

7、ine();System.out.println(msg);sendMessage("10010");//显示说话信息匹配标识sendMessage(msg);}elseif(msg.equals("10086"))//显示进入聊天室{msg=br.readLine();System.out.println(msg);sendMessage("10086");//进入聊天室匹配标识sendMessage(msg);}elseif(msg.equals("841163574"))//私聊{msg=br.re

8、adLine();String[]rt=msg.split("1072416535");//把传进来的用户信息跟说话内容分开System.out.println(rt[1]);//在服务器端显示说话内容String[]tg=rt[0].split(":");//因为是私聊,传过来两个用户的用户信息,这句作用是再把两个用户信息分开Iteratoriu=Server.list1.iterator();//遍历用户集合w

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。