📄 简单的聊天室应用程序.txt
字号:
简单的聊天室应用程序(客户端和服务端)
服务端:
import java.io.*;
import java.net.*;
public class chatSvr
{
public static void main(String[] str)
{
ServerSocket soc;
Socket svrSoc;
ObjectOutputStream objOut=null;
ObjectInputStream objIn=null;
try{
System.out.println("Waiting for client's connecting...");
soc=new ServerSocket(6666);
svrSoc=soc.accept();
System.out.println("The client connected, you can Exit this program by type 'QUIT'");
objOut=new ObjectOutputStream(svrSoc.getOutputStream());
objIn=new ObjectInputStream(svrSoc.getInputStream());
}catch(Exception e){System.exit(0);}
sendMsgOut send=new sendMsgOut(objOut);
send.start();
getMsgFromClient get=new getMsgFromClient(objIn);
get.start();
}
}
class sendMsgOut extends Thread
{
ObjectOutputStream objOut=null;
public sendMsgOut(ObjectOutputStream out)
{
objOut=out;
}
public void run()
{
String strMsg="";
while(true)
{
try{
strMsg=(new BufferedReader(new InputStreamReader(System.in))).readLine();
objOut.writeObject(strMsg);
if (strMsg.equals("QUIT"))System.exit(0);
}catch(Exception e){}
//System.out.println(strMsg);
}
}
}
class getMsgFromClient extends Thread
{
ObjectInputStream objIn;
public getMsgFromClient(ObjectInputStream in)
{
objIn=in;
}
public void run()
{
String strMsg="";
while(true)
{
try{
strMsg=(String)objIn.readObject();
System.out.println("The client said:"+strMsg);
if (strMsg.equals("QUIT"))System.exit(0);
}catch(Exception e){}
}
}
}
客户端:
import java.io.*;
import java.net.*;
public class chatClient
{
public static void main(String[] str)
{
String serverName="";
if (str.length>=1)serverName=str[0];
else {
System.out.println("You must provide a server Name you want to connect to,");
System.out.println("And run your program by input in Dos Prompt Like this:");
System.out.println("java chatClient serverName");
System.exit(0);
}
Socket cltSoc;
ObjectOutputStream objOut=null;
ObjectInputStream objIn=null;
try{
InetAddress address=InetAddress.getByName(serverName);
cltSoc=new Socket(address,6666);
objOut=new ObjectOutputStream(cltSoc.getOutputStream());
objIn=new ObjectInputStream(cltSoc.getInputStream());
System.out.println("Connected to the server successfully...");
System.out.println("If you want to exit this program, type 'QUIT' !");
}catch(Exception e){System.exit(0);}
getMsg get=new getMsg(objIn);
get.start();
sendMsg send =new sendMsg(objOut);
send.start();
}
}
class getMsg extends Thread
{
ObjectInputStream objIn;
public getMsg(ObjectInputStream in)
{
objIn=in;
}
public void run()
{
String strMsg="";
while(true)
{
try{
strMsg=(String)objIn.readObject();
System.out.println("The server said:"+strMsg);
if (strMsg.equals("QUIT"))System.exit(0);
}catch(Exception e){}
}
}
}
class sendMsg extends Thread
{
ObjectOutputStream objOut;
public sendMsg(ObjectOutputStream out)
{
objOut=out;
}
public void run()
{
String strMsg="";
while(true)
{
try{
strMsg=(new BufferedReader(new InputStreamReader(System.in))).readLine();
objOut.writeObject(strMsg);
if (strMsg.equals("QUIT"))System.exit(0);
}catch(Exception e){}
//System.out.println(strMsg);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -