一个Scocket实例程序

<script type="text/javascript"> google_ad_client = "pub-8800625213955058"; /* 336x280, 创建于 07-11-21 */ google_ad_slot = "0989131976"; google_ad_width = 336; google_ad_height = 280; // </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>


import java.io.*;

import java.net.*;



public class EchoServer1

{ public static void main(String[] args )

{ try

{

ServerSocket s = new ServerSocket(8500);

Socket incoming = s.accept( );

BufferedReader in = new BufferedReader

(new InputStreamReader(incoming.getInputStream()));

PrintWriter out = new PrintWriter

(incoming.getOutputStream(), true /* autoFlush */);



out.println( "Hello! Enter BYE to exit." );



boolean done = false;

while (!done)

{ String line = in.readLine();

if (line == null) done = true;

else

{ out.println("Echo: "   line);



if (line.trim().equals("BYE"))

done = true;

}

}

incoming.close();

}

catch (Exception e)

{ System.out.println(e);

}

}

}





// EchoClient1.java

import java.io.*;

import java.net.*;



public class EchoClient1 {      

 public static void main(String args[])   {

   try{			

      if (args.length != 1){

	System.out.println("USAGE: java Client servername");				

	return;

      }	

      String  connectto= args[0];

      Socket connection;

      // connect to server

      if(connectto.equals("localhost")){

	connection=new Socket(InetAddress.getLocalHost(),8500);

      }

      else{

	connection=new Socket(InetAddress.getByName(connectto),8500);				

      }			

      BufferedReader  input=new BufferedReader(new InputStreamReader(connection.getInputStream()));                       

      PrintWriter out = new PrintWriter(connection.getOutputStream(), true /* autoFlush */);

			

      // read information from server                        

      String info;

      info = input.readLine();

      System.out.println(info);

      boolean done = false;

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

      String sInput;

      while(!done){

         sInput = in.readLine();

         out.println(sInput);

         if (sInput.equalsIgnoreCase("bye")) done = true;                           

         info = input.readLine();                           

         System.out.println(info);	

     }

     connection.close();                                                               

   }

   catch(SecurityException e){

     System.out.println("SecurityException when connecting Server!");		

   }		

   catch(IOException e){

     System.out.println("IOException when connecting Server!");   

   }

 }

}

运行 1 运行服务器 java EchoServer1 2 运行 客户端 java EchoClient1 server_hostname
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值