📄 timeserver.java
字号:
import java.io.*;import java.net.*;import java.nio.*;import java.nio.channels.*;import java.nio.charset.*;import java.util.*;public class TimeServer { //设定服务端口 private static int port = 1111; //实例化一个Charset与一个CharsetEncoder private static Charset charset = Charset.forName("US-ASCII"); private static CharsetEncoder encoder = charset.newEncoder(); // 妹到一个Direct的ByteBuffer private static ByteBuffer dbuf = ByteBuffer.allocateDirect(1024); public static void main(String[] args) throws IOException { //打开一个serverSocketChannel ServerSocketChannel ssc = ServerSocketChannel.open(); //得到服务端Socket地址 InetSocketAddress isa = new InetSocketAddress(InetAddress.getLocalHost(), port); //绑定serversocket ssc.socket().bind(isa); System.out.println("server is ready."); while(true) { //默认是阻塞的 Socket so = ssc.accept(); SocketChannel sc = so.getChannel(); try { String now = new Date().toString(); sc.write(encoder.encode(CharBuffer.wrap(now + "\r\n"))); System.out.println(so.getInetAddress() + " : " + now); } finally { if (sc != null) sc.close(); } } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -