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

📄 socketthread.java

📁 J2ME开发的手机socket 聊天室源码。
💻 JAVA
字号:
package server;

/*********************************SocketThread **********************/
import java.io.*;
import java.net.*;
import java.util.*;

public class SocketThread implements Runnable {
	public Socket socke;

	public DataInputStream dis;

	public DataOutputStream dos;

	public Sender sender;

	Calendar date;// =
					// Calendar.getInstance(TimeZone.getTimeZone("Asia/ShangHai"));

	public SocketThread(Socket sok) {
		socke = sok;
	}

	public void start() {
		Thread t = new Thread(this);
		t.start();
	}

	public void run() {
		try {
			socke.setKeepAlive(true);
			dis = new DataInputStream(socke.getInputStream());
			dos = new DataOutputStream(socke.getOutputStream());
			sender = new Sender(dos);
			while (true) {
				StringBuffer sb = new StringBuffer();
				char c;
				while ((c = dis.readChar()) != '\n' && c != -1)
					sb.append(c);
				if (c == -1)
					break;
				date = Calendar.getInstance(TimeZone
						.getTimeZone("Asia/ShangHai"));
				String ljnTime = "(" + date.get(Calendar.YEAR) + "/"
						+ (date.get(Calendar.MONTH) + 1) + "/"
						+ date.get(Calendar.DATE) + " "
						+ date.get(Calendar.HOUR_OF_DAY) + ":"
						+ date.get(Calendar.MINUTE) + ":" + date.get(Calendar.SECOND)
						+ ")";
				String acceptMsg = sb.toString();
				System.out.println(ljnTime + acceptMsg);
				ServerMain.sendEveryone(acceptMsg);
			}
			stop();
			ServerMain.removeObject(this);
		} catch (IOException ioe) {
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public void stop() {
		try {
			if (sender != null)
				sender.stop1();
			if (dis != null)
				dis.close();
			if (dos != null)
				dos.close();
			if (socke != null)
				socke.close();
		} catch (IOException ioe) {
		}
	}
}

⌨️ 快捷键说明

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