这是client端的
import java.net.*;
import java.util.*;
 
 
class EchoClient {
  public static void main( String args[] ) throws Exception {
    DatagramSocket socket = new DatagramSocket();
    socket.setSoTimeout( 5000 );
    byte[] buffer = args[1].getBytes();
    DatagramPacket packet = new DatagramPacket(buffer,buffer.length,InetAddress.getByName(args[0]),7);
    socket.send( packet );
    Date timeSent = new Date();
    socket.receive( packet );
    Date timeReceived = new Date();
    System.out.println( ""+(timeReceived.getTime()-timeSent.getTime())+" ms "+new String(packet.getData(),0,packet.getLength()) );
  }
}
这是sever端的import java.net.*;
import java.util.*;
 
 
class EchoServer {
  public static void main( String args[] ) throws Exception {
    DatagramSocket socket = new DatagramSocket(7);
    DatagramPacket packet = new DatagramPacket(new byte[512],512);
    while ( true ) {
      socket.receive( packet );
      System.out.println( ""+new Date()+" "+packet.getAddress()+":"+packet.getPort()+" "+new String(packet.getData(),0,packet.getLength()) );
      socket.send( packet );
    }
  }
}

解决方案 »

  1.   

    程序没有问题啊
    运行客户端EchoClient 的时候,加上两个参数 "127.0.0.1" "hello world"
      

  2.   

    不是啊,这两个都直接运行不了的,得加些参数什么的, 我不会,但是C/S这里面应该有的基础语句知道些了.能不能帮我加些什么呢,谢谢了.好象得加什么int a,和
    int A = Integer.parseInt(new String(packet.getData(), 0, packet.getLength()))等的.着急啊,明天就用了.
      

  3.   

    server端加参数 -地址 -端口
    client好像缺少代码,连接server时需要知道server地址和端口