⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chatclient.java

📁 一个用java写的即时聊天系统 C/S结构的
💻 JAVA
字号:
package mypkg;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.Socket;public class ChatClient extends Peer implements Runnable{		private Thread exac;		private Socket s;			public ChatClient(String ip,int port){		super();		exac = new Thread(this);		try{			s = new Socket(ip,port);			gui.setStatusContent("The chatclient started.");		}catch(IOException e){			gui.setStatusContent("Could not create ChatSocket.");		}			}		public void start(){		exac.start();	}		public void run() {				while(true){			String message = null;			switch(getStatus()){				case Utility.BEGIN_CONNECT:					try {						in = new BufferedReader(new InputStreamReader(s.getInputStream()));						out = new PrintWriter(s.getOutputStream());						setStatus(Utility.CONNECTED);					} catch (IOException e) {						gui.setStatusContent("Could not create ChatPipe.");					}					System.out.println("Client:Status is begin.status is " + getStatus());					break;									case Utility.CONNECTED:					message = receive();					if(message!=null){						if(message.equals("DISCONNECT")){							setStatus(Utility.DISCONNECTING);							send(Utility.MSG,"DISCONNECT");							gui.setStatusContent("Diconnected.");						}else{							gui.addChatContentOnly(message);						}											}					System.out.println("Client:Status is connected.status is " + getStatus());					break;									case Utility.DISCONNECTING:/*					setStatus(Utility.BEGIN_CONNECT);*/					try{						s.close();					}catch(Exception e){						gui.setStatusContent("Could not close.");					}					close();					gui.setStatusContent("The client disconnected.");					System.out.println("Server:Status is disconnected.status is " + getStatus());					return;			}		}		}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -