• 大小: 27KB
    文件类型: .rar
    金币: 2
    下载: 3 次
    发布日期: 2021-11-15
  • 语言: Java
  • 标签: 聊天室  源代码  java  

资源简介

利用java编写的聊天室软件。软件包括服务端和客户端。连接成功后,有用户列表和聊天记录,每个用户都可以随时退出,随时加入,用户列表会做相应改变。聊天记录显示的是最新的聊天记录。当服务端关闭时,客户端就断开连接。服务端和客户端的独立性相对较好。

资源截图

代码片段和文件信息

package sonyi.client;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;

import javax.swing.JOptionPane;

//启动客户端接收线程
public class StartClient {
public StartClient(Socket s) throws UnknownHostException IOException{
new Thread(new ReceiveClient(s)).start();
}
}

//客户端接收线程
class ReceiveClient implements Runnable{
private Socket s;
public ReceiveClient(Socket s) {
this.s = s;
}
public void run() {
try {
//信息接收流
BufferedReader brIn = new BufferedReader(new InputStreamReader(s.getInputStream()));
while(true){
char info = (char)brIn.read();//读取信息流首字符,判断信息类型
String line = brIn.readLine();//读取信息流内容

if(info == ‘1‘){//代表发送的是消息
WindowClient.textMessage.append(line + “\r\n“); //将消息添加到文本域中
//设置消息显示最新一行,也就是滚动条出现在末尾,显示最新一条输入的信息
WindowClient.textMessage.setCaretPosition(WindowClient.textMessage.getText().length());
}

if(info == ‘2‘ || info == ‘3‘){//有新用户加入或退出,2为加入,3为退出
String sub = line.substring(1 line.length()-1);
String[] data = sub.split(““);
WindowClient.user.clearSelection();
WindowClient.user.setListData(data);
}

if(info == ‘4‘){//4代表服务端退出
WindowClient.link.setText(“连接“);
WindowClient.exit.setText(“已退出“);
WindowClient.socket.close();
WindowClient.socket = null;
break;
}
}
} catch (IOException e) {
JOptionPane.showMessageDialog(WindowClient.window “客户端已退出连接“);
}
}
}

//客户端发送信息类
class SendClient {
SendClient(Socket sobject messageString info) throws IOException{
String messages = info + message;
PrintWriter pwOut = new PrintWriter(s.getOutputStream()true);
pwOut.println(messages);
}
}



 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        299  2014-05-09 09:56  chatSoft\.classpath

     文件        384  2014-05-09 09:45  chatSoft\.project

     文件        598  2014-05-09 09:56  chatSoft\.settings\org.eclipse.jdt.core.prefs

     文件       2239  2014-05-13 09:27  chatSoft\bin\sonyi\client\ReceiveClient.class

     文件       1039  2014-05-13 09:27  chatSoft\bin\sonyi\client\SendClient.class

     文件        570  2014-05-13 09:27  chatSoft\bin\sonyi\client\StartClient.class

     文件       1108  2014-05-13 09:27  chatSoft\bin\sonyi\client\WindowClient$1.class

     文件       1486  2014-05-13 09:27  chatSoft\bin\sonyi\client\WindowClient$2.class

     文件       2165  2014-05-13 09:27  chatSoft\bin\sonyi\client\WindowClient$3.class

     文件        717  2014-05-13 09:27  chatSoft\bin\sonyi\client\WindowClient$4.class

     文件        749  2014-05-13 09:27  chatSoft\bin\sonyi\client\WindowClient$5.class

     文件       4686  2014-05-13 09:27  chatSoft\bin\sonyi\client\WindowClient.class

     文件       2477  2014-05-13 09:27  chatSoft\bin\sonyi\server\ReceiveServer.class

     文件       1484  2014-05-13 09:27  chatSoft\bin\sonyi\server\SendServer.class

     文件       2425  2014-05-13 09:27  chatSoft\bin\sonyi\server\StartServer.class

     文件       1103  2014-05-13 09:27  chatSoft\bin\sonyi\server\WindowServer$1.class

     文件       1644  2014-05-13 09:27  chatSoft\bin\sonyi\server\WindowServer$2.class

     文件       1524  2014-05-13 09:27  chatSoft\bin\sonyi\server\WindowServer$3.class

     文件        717  2014-05-13 09:27  chatSoft\bin\sonyi\server\WindowServer$4.class

     文件        749  2014-05-13 09:27  chatSoft\bin\sonyi\server\WindowServer$5.class

     文件       4751  2014-05-13 09:27  chatSoft\bin\sonyi\server\WindowServer.class

     文件       2004  2014-05-13 09:27  chatSoft\src\sonyi\client\StartClient.java

     文件       6265  2014-05-13 09:27  chatSoft\src\sonyi\client\WindowClient.java

     文件       3673  2014-05-13 09:27  chatSoft\src\sonyi\server\StartServer.java

     文件       6383  2014-05-13 09:27  chatSoft\src\sonyi\server\WindowServer.java

     目录          0  2014-05-12 18:04  chatSoft\bin\sonyi\client

     目录          0  2014-05-12 17:04  chatSoft\bin\sonyi\server

     目录          0  2014-05-13 09:27  chatSoft\src\sonyi\client

     目录          0  2014-05-13 09:27  chatSoft\src\sonyi\server

     目录          0  2014-05-09 09:56  chatSoft\bin\sonyi

............此处省略8个文件信息

评论

共有 条评论