Java UDP网络编程 - 最简单示例

来源:互联网 发布:mac terminal 有趣 编辑:程序博客网 时间:2024/04/30 02:22


  1. /**
  2. *UDPServer
  3. *@author Winty wintys@gmail.com
  4. *@version 2008-12-15
  5. */
  6. import java.io.*;
  7. import java.net.*;
  8. class UDPServer{
  9.     public static void main(String[] args)throws IOException{
  10. DatagramSocket server = new DatagramSocket(5050);
  11.         byte[] recvBuf = new byte[100];
  12. DatagramPacket recvPacket
  13.             = new DatagramPacket(recvBuf , recvBuf.length);
  14.         server.receive(recvPacket);
  15.         String recvStr = new String(recvPacket.getData() ,0 , recvPacket.getLength());
  16.         System.out.println("Hello World!" + recvStr);
  17.         int port = recvPacket.getPort();
  18.         InetAddress addr = recvPacket.getAddress();
  19.         String sendStr = "Hello ! I'm Server";
  20.         byte[] sendBuf;
  21.         sendBuf = sendStr.getBytes();
  22.         DatagramPacket sendPacket
  23.             = new DatagramPacket(sendBuf , sendBuf.length , addr , port );
  24.         server.send(sendPacket);
  25.         server.close();
  26.     }
  27. }

  1. /**
  2. *UDPClient
  3. *@author Winty wintys@gmail.com
  4. *@version 2008-12-15
  5. */
  6. import java.io.*;
  7. import java.net.*;
  8. class UDPClient{
  9.     public static void main(String[] args)throws IOException{
  10.         DatagramSocket client = new DatagramSocket();
  11.        
  12.         String sendStr = "Hello! I'm Client";
  13.         byte[] sendBuf;
  14.         sendBuf = sendStr.getBytes();
  15.         InetAddress addr = InetAddress.getByName("127.0.0.1");
  16.         int port = 5050;
  17.         DatagramPacket sendPacket
  18.             = new DatagramPacket(sendBuf ,sendBuf.length , addr , port);
  19.         client.send(sendPacket);
  20.         byte[] recvBuf = new byte[100];
  21.         DatagramPacket recvPacket
  22.             = new DatagramPacket(recvBuf , recvBuf.length);
  23.         client.receive(recvPacket);
  24.         String recvStr = new String(recvPacket.getData() ,0 ,recvPacket.getLength());
  25.         System.out.println("收到:" + recvStr);
  26.         client.close();
  27.     }
  28. }
0 0
原创粉丝点击