zoukankan      html  css  js  c++  java
  • Java网络编程

    1、Client

    package cn.qi.Client;
    
    import java.io.*;
    import java.net.Socket;
    
    public class Client {
        Socket clientSocket;
        Client() {
            // 建立连接到服务器端的socket
            try {
                clientSocket = new Socket("127.0.0.1", 5000);
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    
        public void readFileAndSent() throws IOException {
            OutputStream os = clientSocket.getOutputStream();
            BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(os));
    
            // 读文件
            String path = this.getClass().getClassLoader().getResource("./prop/text.txt").getPath();
            FileReader fr = new FileReader(path);
            BufferedReader br = new BufferedReader(fr);
            String str = null;
            while((str = br.readLine()) != null) {
                System.out.println(str);
                // 每读一行,写一行
                bw.write(str);
                // 获取当前OS的换行符并写入
                bw.write(System.getProperty("line.separator"));
                bw.flush();
            }
    
            // 关闭流
            bw.close();
            br.close();
            fr.close();
    
            clientSocket.close();
        }
    }

    2、Server

    package cn.qi.Server;
    
    import java.io.*;
    import java.net.ServerSocket;
    import java.net.Socket;
    
    public class Server {
        ServerSocket serverSocket;
        Server() {
            // 建立severSocket,监听对应端口
            try {
                serverSocket = new ServerSocket(5000);
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    
        public void readFileAndWrite() throws IOException {
            // 获取写入路径
            String path = this.getClass().getClassLoader().getResource("./prop/").getPath();
            // 服务器端写文件
            FileWriter fw = new FileWriter(path+"textSocket.txt");
            BufferedWriter bw = new BufferedWriter(fw);
    
            // 写的内容来自网络端
            while (true) {
                Socket socket = serverSocket.accept();
                InputStream is = socket.getInputStream();
                BufferedReader br = new BufferedReader(new InputStreamReader(is));
                String str = null;
                while((str = br.readLine()) != null) {
                    // 读到了客户端发送的信息
                    bw.write(str);
                    // 获取当前OS的换行符并写入
                    bw.write(System.getProperty("line.separator"));
                    bw.flush();
                }
    
                // 关闭流
                br.close();
    
                socket.close();
            }
        }
    }
  • 相关阅读:
    NowCoder数列(矩阵快速幂变式)
    P1147 连续自然数和(思维题)
    P1029 最大公约数和最小公倍数问题(思维题)
    Diophantus of Alexandria
    欧拉筛法求素数( 洛谷)
    欧拉函数
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
  • 原文地址:https://www.cnblogs.com/GjqDream/p/11624327.html
Copyright © 2011-2022 走看看