• 大小: 211KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-09
  • 语言: Java
  • 标签:

资源简介

主要由多线程,图形化界面,socket网络等写的简单的java网络聊天室

资源截图

代码片段和文件信息

package com.zk.chat;

import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.net.*;

public class ChatClient extends frame{

Socket s = null;
//创建单行文本输入框
TextField tfTxt = new TextField();
TextArea taContent = new TextArea();

Thread tRecv = new Thread(new RecvThread());

DataOutputStream dos = null;
DataInputStream dis = null;
private boolean bConnected = false;
public static void main(String[] args) {
new ChatClient().launchframe();


}
public void launchframe(){
//设置位置
setLocation(400300);
//设置容器大小
this.setSize(300 300);
//布局管理器  5个区域
add(tfTxtBorderLayout.SOUTH);
add(taContentBorderLayout.NORTH);
//调整此窗口的大小,以适合其子组件的首选大小和布局
pack();
//注册监听器
this.addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e) {
disconnect();
System.exit(0);
}
});
tfTxt.addActionListener(new TFListener());
//设置frame为可见,默认为不可见
setVisible(true);
connect();
tRecv.start();
}
public void connect(){
try {
 s = new Socket(“127.0.0.1“8887);
 
 //DataOutputStream()能够写数据流
 dos = new DataOutputStream(s.getOutputStream());
 dis = new DataInputStream(s.getInputStream());
System.out.println(“connected“);
bConnected = true;
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}
public void disconnect(){
try {
dos.close();
dis.close();
s.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
/*try {
bConnected =false;
tRecv.join();

} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try {
dos.close();
dis.close();
s.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}*/

}
private class TFListener implements ActionListener{

public void actionPerformed(ActionEvent e) {
String str = tfTxt.getText().trim();
//taContent.setText(str);
tfTxt.setText(““);
try {
//DataOutputStream dos = new DataOutputStream(s.getOutputStream());
dos.writeUTF(str);
dos.flush();
//dos.close();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}

}

}


class RecvThread implements Runnable{

public void run() {

try {
while(bConnected){
String str;
str = dis.readUTF();
//System.out.println(str);
taContent.setText(taContent.getText()+‘\n‘+str);
}
} catch(SocketException e){

System.out.println(“退出了,byebye“);
}catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}




}

}
}

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

     文件     435066  2018-01-05 15:28  java聊天室\1.doc

     文件        299  2017-10-31 20:12  java聊天室\代码\.classpath

     文件        383  2017-10-31 20:12  java聊天室\代码\.project

     文件        598  2017-10-31 20:12  java聊天室\代码\.settings\org.eclipse.jdt.core.prefs

     文件        734  2017-11-03 11:05  java聊天室\代码\bin\com\zk\chat\ChatClient$1.class

     文件       1562  2017-11-03 11:05  java聊天室\代码\bin\com\zk\chat\ChatClient$RecvThread.class

     文件       1307  2017-11-03 11:05  java聊天室\代码\bin\com\zk\chat\ChatClient$TFListener.class

     文件       2896  2017-11-03 11:05  java聊天室\代码\bin\com\zk\chat\ChatClient.class

     文件       2677  2017-11-03 11:05  java聊天室\代码\bin\com\zk\chat\ChatServer$Client.class

     文件       1850  2017-11-03 11:05  java聊天室\代码\bin\com\zk\chat\ChatServer.class

     文件       3071  2017-10-31 22:06  java聊天室\代码\src\com\zk\chat\ChatClient.java

     文件       2381  2017-10-31 22:49  java聊天室\代码\src\com\zk\chat\ChatServer.java

     目录          0  2018-01-05 15:25  java聊天室\代码\bin\com\zk\chat

     目录          0  2018-01-05 15:25  java聊天室\代码\src\com\zk\chat

     目录          0  2018-01-05 15:25  java聊天室\代码\bin\com\zk

     目录          0  2018-01-05 15:25  java聊天室\代码\src\com\zk

     目录          0  2018-01-05 15:25  java聊天室\代码\bin\com

     目录          0  2018-01-05 15:25  java聊天室\代码\src\com

     目录          0  2018-01-05 15:25  java聊天室\代码\.settings

     目录          0  2018-01-05 15:25  java聊天室\代码\bin

     目录          0  2018-01-05 15:25  java聊天室\代码\src

     目录          0  2018-01-05 15:25  java聊天室\代码

     目录          0  2018-01-05 15:29  java聊天室

----------- ---------  ---------- -----  ----

               452824                    23


评论

共有 条评论