可群发,冒号加客户号可指定用户发送的java聊天程序

时间:2012-07-03 12:34:43
【文件属性】:

文件名称:可群发,冒号加客户号可指定用户发送的java聊天程序

文件大小:11KB

文件格式:RAR

更新时间:2012-07-03 12:34:43

java 聊天

自己写的个java聊天 import java.io.*; import java.net.*; import java.util.ArrayList; import java.util.List; public class ChatServer { public static int id; private ServerSocket server; private List connections; InetAddress localAddress; public static void main(String[] args){ new ChatServer().startServer(); } private void startServer(){ boolean started = false; try { connections = new ArrayList(); server = new ServerSocket(8888); localAddress = InetAddress.getLocalHost(); started = true; System.out.println("服务器已启动..正在监听.../服务器ip: " + localAddress); } catch (IOException e) { System.out.println("服务器启动失败!请关闭服务器,重新启动"); System.exit(0); } while(started){ try { Socket connection = server.accept(); System.out.println("来自" + connection.getInetAddress() + "已建立:" ); Connection c = new Connection(connection); connections.add(c); new Thread(c).start(); } catch (IOException e) { System.out.println("客户端连接出错"); } } } class Connection implements Runnable{ private Socket connection; private ObjectInputStream inputS; private ObjectOutputStream outputS; private boolean beConnected = false; private int id; public Connection(Socket connection){ this.connection = connection; this.id = ChatServer.id++; try { inputS = new ObjectInputStream(connection.getInputStream()); outputS = new ObjectOutputStream(connection.getOutputStream()); beConnected = true; } catch (IOException e) { System.out.println("无法获取连接的输入输出流"); } } public void run(){ try { outputS.writeObject("已连接到服务器:"+connection.getInetAddress()); outputS.writeObject("服务器:您的客户id为 :" + id + "\t" + " 输入BYE退出聊天"); while(true){ String inLine = (String) inputS.readObject(); //System.out.println(inLine); ObjectOutputStream output; if(inLine.charAt(0)==':'&&inLine.length()>0){ int i =0; int index = Integer.parseInt(inLine.substring(1,2)); for(i = 0;i


【文件预览】:
ChatT
----.project(381B)
----bin()
--------ChatServer.class(2KB)
--------ChatClient.class(4KB)
--------ChatClient$ThreadRecv.class(2KB)
--------ChatClient$1.class(699B)
--------ChatClient$TfListener.class(1KB)
--------ChatServer$Connection.class(4KB)
----src()
--------ChatServer.java(3KB)
--------ChatClient.java(3KB)
----.classpath(232B)

网友评论