Java Socekt 入门 一

来源:互联网 发布:张民弢 知乎 编辑:程序博客网 时间:2024/06/04 23:46

服务器端

import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.io.PrintWriter;import java.net.ServerSocket;import java.net.Socket;public class EchoServer {    public static void main(String[] args) throws IOException {        System.out.println("=============开启了服务器端程序============");        ServerSocket serverSocket = new ServerSocket(8000);        int index = 0;        while (true) {            Socket socket = serverSocket.accept();            System.out.println("开起了第"+index+"个连接");            System.out.println("server : " + socket.getInetAddress() + " : " + socket.getPort());            BufferedReader bf = new BufferedReader(new InputStreamReader(socket.getInputStream()));            while (true) {                String readContent = bf.readLine();                System.out.println("server : " + readContent);// 此处是 println,不能是print               PrintWriter pw = new PrintWriter(new OutputStreamWriter(socket.getOutputStream()), true);                pw.println("echo : " + readContent);                                if ("exit".equals(readContent)) {                    if (socket != null) {                        socket.close();                    }                }            }        }            }}

客户端程序

import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.io.PrintWriter;import java.net.Socket;import java.net.UnknownHostException;public class EchoClient {    public static void main(String[] args) throws UnknownHostException, IOException {        Socket socket = new Socket("localhost", 8000);        PrintWriter pw = new PrintWriter(new OutputStreamWriter(socket.getOutputStream()), true);        BufferedReader brS = new BufferedReader(new InputStreamReader(socket.getInputStream()));        while (true) {            BufferedReader br = new BufferedReader(new InputStreamReader(System.in));            System.out.println("输入:");            String readContent = "";            while (true) {                readContent = br.readLine();                System.out.println("client : " + readContent);                pw.println(readContent);// 此处是 println,不能是print                System.out.println(brS.readLine());                if ("exit".equals(readContent)) {                    if (socket != null) {                        socket.close();                         break;                    }                }            }                    }            }}


0 0
原创粉丝点击