欢迎来到天天文库
浏览记录
ID:40295505
大小:73.50 KB
页数:5页
时间:2019-07-30
《cs模式聊天程序》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、c/s模式聊天程序赵盼电气1111.总体介绍:这是一个CS模式的聊天程序。有一个server端,和若干client端。Client端之间通过向server端发送消息,进而由server端进行信息的更新并发送到个client端。从而实现聊天。2.使用说明:总共有三个java文件和一个文本文件。clientInt.javalogin.javaAppServer.javaUsrPwd.txt(本来还应该有一个Register.java)即客户端程序,服务器端程序,登陆程序,注册程序,以及一个在服务器端保存注册用户信息的文本文件。使用时,需要编译服务器端应用程序。为编
2、译服务器程序,执行下面的命令:c:>javacAppServer.java在编译服务器程序通过之后,通过执行下面的命令就可以启动聊天服务器:c:>javaAppServer下一步,需要编译创建的两个接口文件,执行下面的命令:c:>javaclogin.javac:>javacclientInt.java现在已经为聊天程序的三个接口创建的类文件。即聊天服务器端已经正式启动,可以接收客户端信息了。即服务器端存在clientInt.javalogin.javaAppServer.javaUsrPwd.txt四个文件。现在启动客户端。将clientInt.ja
3、valogin.java两个文件复制到客户端,同样先进行编译c:>javaclogin.javac:>javacclientInt.java通过后执行下面的命令:c:>javalogin即可登陆服务器。以上操作都是在客户端和服务器端计算机上已经安装JDK的前提下进行的。登陆时,弹出登陆框,需要输入用户名和密码即可登陆。成功登陆后,进入聊天界面,可以发送信息,并接收其他客户端发送的信息,同时可以看见其他在线用户。在退出聊天程序后,其用户名ID也会自然从其他用户的在线用户列表中消失。3.实现功能:服务器端实现功能:保存在线用户列表更新每个客户端的聊天界面上的
4、信息验证登陆信息。聊天服务器从接收客户端接收3种消息:“FromTimer”消息“LoginInfo”消息“UserLogout”消息其实现的语句分别是:“FromTimer”消息if((msg.equals("FromTimer"))){streamToClient.writeObject(vector);streamToClient.writeObject(vctrList);}“LoginInfo”消息if(msg.equals("LoginInfo")){msg=streamFromClient.readLine();intver=verify(msg
5、);if(ver==1){Stringcolon=newString(":");intindex=((String)msg).lastIndexOf(colon);StringuserName=(String)msg.substring(0,index);if(!(vctrList.indexOf((String)userName)>0)){streamToClient.writeObject("Welcome");vctrList.addElement((String)userName);}}else{streamToClient.writeObject("
6、Logindenied");}}“UserLogout”消息if(msg.equals("UserLogout")){StringremUser=streamFromClient.readLine();booleanb=vctrList.removeElement((String)remUser);}else{message=message+msg;vector.addElement((String)message);streamToClient.writeObject(vector);}验证登陆的源程序是是:intverify(Stringmesg){try
7、{RandomAccessFileRAS=newRandomAccessFile("UsrPwd.txt","r");inti=0;Stringstr="";while((RAS.getFilePointer())!=(RAS.length())){str=RAS.readLine();if(str.equals(mesg)){ctr=1;break;}}RAS.close();}catch(Exceptione){}returnctr;另外intcheckFile(Stringmesg)本来是做的验证注册是否成功的。客户端实现功能:显示在线用户列表显示聊天室
8、其他用户发送的信息自动更新聊天室和在线
此文档下载收益归作者所有