Java Socket 简单实践
发布日期:2021-05-07 07:22:00 浏览次数:13 分类:精选文章

本文共 3595 字,大约阅读时间需要 11 分钟。

服务端

            import java.io.BufferedReader;            import java.io.IOException;            import java.io.InputStreamReader;            import java.net.ServerSocket;            import java.net.Socket;            public class ServerSocketTest {                public static void main(String[] args) throws IOException {                    // 初始化服务端socket并且绑定9999端口                    ServerSocket serverSocket = new ServerSocket(9999);                    // 等待客户端的连接                    Socket socket = serverSocket.accept();                    // 获取输入流,并且指定统一的编码格式                    BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(socket.getInputStream(), "UTF-8"));                    // 读取一行数据                    String str;                    // 通过while循环不断读取信息                    while ((str = bufferedReader.readLine()) != null) {                        System.out.println(str);                    }                }            }        

客户端

            import java.io.*;            import java.net.Socket;            import java.util.*;            public class ClientSocket {                // 初始化一个socket                static Socket socket;                // 通过socket获取字符流                static BufferedWriter bufferedWriter;                // 通过标准输入流获取字符流                static BufferedReader bufferedReader;                public static void main(String[] args) {                    Calendar calendar = Calendar.getInstance();                    Date firstTime = calendar.getTime();                    // 1秒执行一次                    long period = 1000 * 1;                    Timer timer = new Timer();                    {                        try {                            // host:ip地址  port:端口号                            socket = new Socket("127.0.0.1", 9999);                            bufferedWriter = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));                            bufferedReader = new BufferedReader(new InputStreamReader(System.in, "UTF-8"));                        } catch (IOException e) {                            e.printStackTrace();                        }                    }                    timer.schedule(new TimerTask() {                        int i = 0;                        @Override                        public void run() {                            try {                                String str = String.valueOf(i);                                System.out.println(str);                                bufferedWriter.write(str);                                bufferedWriter.write("\n");                                bufferedWriter.flush();                                i++;                            } catch (IOException e) {                                e.printStackTrace();                            }                        }                    }, firstTime, period);                }            }        

参考资料

  1. https://www.cnblogs.com/linkenpark/p/11289018.html
  2. https://www.cnblogs.com/blogtech/p/10142212.html
  3. https://blog.csdn.net/qq_41833449/article/details/88822990
  4. https://www.runoob.com/java/net-serversocket-socket.html
  5. https://developer.51cto.com/art/201202/318163.htm
  6. https://www.jianshu.com/p/cde27461c226
  7. https://developer.51cto.com/art/201202/317543.htm
  8. https://blog.csdn.net/songxinfeng1989/article/details/81027156
上一篇:js-禁止右键菜单代码、禁止复制粘贴代码
下一篇:MySQL忘记密码及重置密码

发表评论

最新留言

不错!
[***.144.177.141]2025年03月27日 07时54分56秒