timeserver.java

来自「这个是我的师傅给我的代码」· Java 代码 · 共 91 行

JAVA
91
字号
package chat;

import java.io.*;
import java.net.*;
import java.util.*;
import javax.swing.JTextArea;

/**
 * <p>Title: 聊天系统</p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2005</p>
 *
 * <p>Company: WeHut</p>
 *
 * @author Angel
 * @version 1.0
 */
public class TimeServer extends Thread{
    private ServerSocket server;
    private boolean listening;
    private JTextArea textArea;
    private Socket socketer;
    public TimeServer()
    {
        this(1024);
    }
    public TimeServer(int port){
        super();
        try
        {
            server = new ServerSocket(port);
            listening = true;
        }
        catch(IOException ex)
        {
            //throw ex;
        }
    }
    public void setContent(JTextArea textArea)
    {
        this.textArea = textArea;
    }
    public void stopListen() throws IOException
    {
        listening = false;
        try
        {
            socketer.close();
        }
        catch(IOException ex)
        {
            throw ex;
        }
    }
    public void run()
    {
        if(server == null)
            return;
        try
        {
            socketer = server.accept();
            PrintWriter writer;
            BufferedReader reader;
            while(true)
            {
                if(!listening) return;
                BufferedOutputStream bos = new BufferedOutputStream(socketer.getOutputStream());
                writer = new PrintWriter(bos, false);
                reader = new BufferedReader(new InputStreamReader(socketer.getInputStream()));
                String incept = reader.readLine();
                if (incept.toUpperCase().equals("EXIT"))
                    break;
                textArea.insert(incept + "\n",0);
                Date now = new Date();
                writer.print("已接收,时间:");
                writer.println(now.toString());
                writer.flush();
            }
            reader.close();
            writer.close();
            //server.close();
        }
        catch(IOException ex)
        {
            //throw ex;
        }
    }
}

⌨️ 快捷键说明

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