我最近遇到一个问题;是关于如何接收服务器回应的信息;
听问各位专家用java中的socket或其它类如何监听和接收返回信息??
谢谢!!!

解决方案 »

  1.   

    ServerSocket s=new ServerSocket(11111);//监听的端口
    Socket socket=s.accept();
    BufferedReader in=new BufferedReader(new InputStreamReader(socket.getInputStream()));
    String str=in.readLine();
      

  2.   

    给出Tcp通讯的示范代码,供楼主参考:
    TimeServerTcp.java
    import java.net.*;
    import java.io.*;
    import java.util.Date;
    public class TimeServerTcp{
    public static void main(String[] args){

    ServerSocket ss=null;
    Socket socket=null;
    PrintWriter pw=null; try{
    ss=new ServerSocket(2122);
    socket=ss.accept();

    OutputStream os=socket.getOutputStream();
    pw=new PrintWriter(os,true);//zidong flush
    Date date=new Date();
    pw.println(date.toString());
    }catch(Exception e){
    e.printStackTrace();
    }finally{
    try{
    if(pw!=null)pw.close();
    if(ss!=null)ss.close();
    if(socket!=null)socket.close();
    }catch(Exception e){e.printStackTrace();}

    }

    }
    }
    TimeClientTcp.java
    import java.net.*;
    import java.io.*;public class TimeClientTcp{
    public static void main(String[] args){
    Socket socket=null;
    BufferedReader br=null; try{
    socket=new Socket("localhost",2122);
    InputStream is=socket.getInputStream();
    OutputStream os=socket.getOutputStream();

    InputStreamReader isr=new InputStreamReader(is);
    br=new BufferedReader(isr);
    String data=br.readLine();
    System.out.println(data);
    }catch(Exception e){
    e.printStackTrace();
    }finally{
    try{
    if(br!=null)br.close();
    if(socket!=null)socket.close();
    }catch(Exception e){e.printStackTrace();}
    }
    }
    }