当前位置: 代码迷 >> Java相关 >> Socket简略使用
  详细解决方案

Socket简略使用

热度:95   发布时间:2016-04-22 19:29:32.0
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();    }}

 

  相关解决方案