资源简介
java语言基于TCP写的简单的聊天室,有客服端和服务器端,有登陆功能
代码片段和文件信息
package chat.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 chat.server.Contants;
public class Client implements Runnable {
private Socket client;
private Clientframe frame;
public Client(Clientframe frame) {
this.frame=frame;
try {
client=new Socket(“127.0.0.1“ 8888);
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
new Thread(this).start();
}
@Override
public void run() {
try {
BufferedReader reader=new BufferedReader(new InputStreamReader(client.getInputStream()));
while (true) {
String temp=reader.readLine();
if (temp.startsWith(Contants.LOGIN)) {
String f=temp.substring(Contants.LOGIN.length());
String[] names=f.split(“#####“);
if (names==null||names.equals(““)) {
frame.getBoxModel().addElement(f);
}else{
for (String string : names) {
frame.getBoxModel().addElement(string);
}
}
}
if (temp.startsWith(Contants.CANCEL)) {
String msg=temp.substring(Contants.CANCEL.length());
frame.getArea().append(msg+“\n“);
frame.getLogin().setEnabled(true);
frame.getBoxModel().removeAllElements();
}
if(temp.startsWith(Contants.FQUIT)){
String name=temp.substring(Contants.FQUIT.length());
frame.getBoxModel().removeElement(name);
}
if (temp.startsWith(Contants.MSG)) {
String m=temp.substring(Contants.MSG.length());
String name=m.substring(0m.indexOf(“#“));
String msg=m.substring(m.indexOf(“#“)+1);
System.out.println(name);
frame.getArea().append(name+“--˵--\n“);
frame.getArea().append(msg+“\n“);
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
public void send(String msg){
try {
PrintWriter writer=new PrintWriter(client.getOutputStream());
writer.write(msg+“\n“);
writer.flush();
} catch (IOException e) {
e.printStackTrace();
}
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2172 2013-12-25 20:28 chat\client\Client.java
文件 3573 2013-12-25 20:26 chat\client\Clientfr
文件 285 2013-12-25 19:24 chat\client\Contants.java
文件 285 2013-12-25 19:24 chat\server\Contants.java
文件 2675 2013-12-25 20:30 chat\server\RecMsg.java
文件 698 2013-12-25 19:35 chat\server\Server.java
文件 1987 2013-12-25 19:49 chat\server\Serverfr
目录 0 2014-01-22 16:17 chat\client
目录 0 2014-01-22 16:17 chat\server
目录 0 2014-01-22 16:17 chat
----------- --------- ---------- ----- ----
11675 10
- 上一篇:Android小游戏实例113793
- 下一篇:jd_jui压缩文件
相关资源
- jd_jui压缩文件
- java编写的操作系统
- java参数传递学习demo
- java数组复制函数的使用demo
- java实现复数加减运算的类
- 分支定界法-旅行商TSP问题
- 北大青鸟移动嗖嗖业务大厅项目源代
- JAVA 企业内部通讯软件源代码
- 运动会积分管理系统Java
- 一个简单的java网络蜘蛛程序,非常适
- JAVA2实用教程第5版课后习题电子版
- 基于Java的超市管理系统含源码和文档
- JAVA工资管理系统课程设计附报告
- java 实现多项式的运算
- android 英文生词本设计
- 基于JSP+Servlet+JavaBean+Dao开发模式——
- java国际象棋小游戏
- Thinking In Java 第四版 练习题答案包含
- JAVA语言超市收银系统课程设计
- java实现简单投票程序
- JavaFX拖放操作
- 人工智能机器人alice的java版源代码A
- 会议室管理 面向对象课设
- java实现邮件发送
- 推箱子java代码
- java实现的数组元素查找
- java员工类
- 基于JSP高校实验室仪器设备管理系统
- java通讯录
- Java 电梯模拟程序 很逼真的电梯模拟
评论
共有 条评论