你的位置:首页 > Java教程

[Java教程]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();  }}