当前位置: 代码迷 >> Android >> Android-使用socket通讯建立网络聊天室一
  详细解决方案

Android-使用socket通讯建立网络聊天室一

热度:69   发布时间:2016-04-28 01:20:38.0
Android--使用socket通讯建立网络聊天室1

首先建立服务器端程序:

1.MyServerSocket.java

package com.test.test;public class MyServerSocket {	public static void main(String[] args) {		new ServerListener().start();	}}


2.ServerListener.java用于监听端口连接

package com.test.test;import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;import javax.swing.JOptionPane;public class ServerListener extends Thread {	public void run() {		try {			ServerSocket serverSocket=new ServerSocket(12345);			while(true){				Socket socket=serverSocket.accept();				JOptionPane.showMessageDialog(null,"有客户端连接到了12345端口!");				new ChatSocket(socket).start();			}		} catch (IOException e) {			// TODO Auto-generated catch block			e.printStackTrace();		}	}}


3.ChatSocket.java

package com.test.test;import java.io.IOException;import java.io.UnsupportedEncodingException;import java.net.Socket;public class ChatSocket extends Thread {	Socket socket;	public ChatSocket(Socket s){		this.socket=s;	}		public void out(String out){		try {			socket.getOutputStream().write(out.getBytes("UTF-8"));		} catch (UnsupportedEncodingException e) {			// TODO Auto-generated catch block			e.printStackTrace();		} catch (IOException e) {			// TODO Auto-generated catch block			e.printStackTrace();		}	}	public void run() {		int count=0;		while(true){			count++;			out("loop+"+count);		}	}}


运行MyServerSocket.java:

打开DOS界面 输入telnet localhost 12345  显示如图:

 

下面点击确定:

 

再打开一个客户端输入指令:

可以看出每一个客户端都有一个独立的线程进行处理。

  相关解决方案