现在的位置: 首页 > 综合 > 正文

java socket编程

2018年01月15日 ⁄ 综合 ⁄ 共 1865字 ⁄ 字号 评论关闭

MyServer.java

import java.io.*;

import java.net.*;

public class MyServer {

    public static void main(String[] args) throws IOException{

        ServerSocket server=new ServerSocket(5678);

        while(true){

            Socket socket = server.accept();

            Thread thread = new Thread(new MultiUser(socket)); 

            thread.setDaemon(true);

            thread.start();

        }

    }

}

 

MultiUser.java

import java.net.*;

import java.io.*;

public class MultiUser implements Runnable{

    private Socket client;

    public MultiUser(Socket c){

        this.client=c;

    }

    public void run(){

        try{

            BufferedReader in=new BufferedReader(new InputStreamReader(client.getInputStream()));

            PrintWriter out=new PrintWriter(client.getOutputStream());

            while(true){

                String str=in.readLine();

                if(!str.equals("null")){

                    System.out.println("客户端输入:" + str);

                    out.println(str);

                    out.flush();

                    if(str.equals("end"))

                        break;

                }

            }

            client.close();

        }catch(IOException ex){

        }finally{

        }

    }

}

Client.Java

import java.net.*;

import java.io.*;

 

public class Client{

    private static Socket server;

    private MyServer myServer = new MyServer();

 

    public static void main(String[] args)throws Exception{

        server=new Socket("172.23.218.115",5678);

        BufferedReader in=new BufferedReader(new InputStreamReader(server.getInputStream()));

        PrintWriter out=new PrintWriter(server.getOutputStream());

        BufferedReader wt=new BufferedReader(new InputStreamReader(System.in));

 

        while(true){

            String str=wt.readLine();

            out.println(str);

            out.flush();

            if(str.equals("end")){

                break;

            }

            String strSer = in.readLine();

            System.out.println("服务器端回显:" + strSer);

        }

        server.close();

    }

}

 

抱歉!评论已关闭.