爱程序网

Socket简单使用

来源: 阅读:

  客户端代码:  

import java.io.*;
import java.net.*;
public class DailyAdviceClient {
    public void go(){
        try{
            Socket s=new Socket("127.0.0.1",4242);
            InputStreamReader streamReader=new InputStreamReader(s.getInputStream());
            BufferedReader reader=new BufferedReader(streamReader);
            
            String advice=reader.readLine();
            System.out.println("Today you should: "+advice);
            reader.close();
        }
        catch(IOException ex){
            ex.printStackTrace();
        }
    }
    public static void main(String[] args){
        DailyAdviceClient client=new DailyAdviceClient();
        client.go();
    }
}

  服务器代码:  

import java.io.*;
import java.net.*;
public class DailyAdviceServer {
    String[] adviceList={"Take smaller bites","Go for the tight jeans.No they do NOT make you look fat.",
    "One word:inappropriate","Just for oday,be honest.Tell your boss what you *really* think",
    "You might want to rethink that haircut."};
    public void go(){
        try{
            ServerSocket serverSock=new ServerSocket(4242);
            
            while(true){
                Socket sock=serverSock.accept();
                
                PrintWriter writer=new PrintWriter(sock.getOutputStream());
                String advice=getAdvice();
                writer.println(advice);
                writer.close();
                System.out.println(advice);
            }
        }
        catch(IOException ex){
            ex.printStackTrace();
        }
    }
    private String getAdvice(){
        int random=(int)(Math.random()*adviceList.length);
        return adviceList[random];
    }
    public static void main(String[] args){
        DailyAdviceServer server=new DailyAdviceServer();
        server.go();
    }
}

 

关于爱程序网 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助