摘自:http://blog.csdn.net/wintys/article/details/3525643/

java实现UDP协议传输DatagramSocketjava实现UDP协议传输DatagramSocket

Server端。

package com.topca.server;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;

public class UDPServer {

    public static void main(String[] args) throws IOException {
        DatagramSocket server = new DatagramSocket(5050);
        byte[] recvBuf = new byte[100];
        DatagramPacket recvPacket = new DatagramPacket(recvBuf, recvBuf.length);
        server.receive(recvPacket);
        String recvStr = new String(recvPacket.getData(), 0,
                recvPacket.getLength());
        System.out.println("Hello World!" + recvStr);
        int port = recvPacket.getPort();
        InetAddress addr = recvPacket.getAddress();
        String sendStr = "Hello ! I'm Server";
        byte[] sendBuf;
        sendBuf = sendStr.getBytes();
        DatagramPacket sendPacket = new DatagramPacket(sendBuf, sendBuf.length,
                addr, port);
        server.send(sendPacket);
        server.close();
    }
}

Client端

package com.topca.clien;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;

public class UDPClien {
     public static void main(String[] args)throws IOException{
            DatagramSocket client = new DatagramSocket();
            
            String sendStr = "Hello! I'm Client";
            byte[] sendBuf;
            sendBuf = sendStr.getBytes();
            InetAddress addr = InetAddress.getByName("10.0.1.203");
            int port = 5050;
            DatagramPacket sendPacket 
                = new DatagramPacket(sendBuf ,sendBuf.length , addr , port);
            client.send(sendPacket);
            byte[] recvBuf = new byte[100];
            DatagramPacket recvPacket
                = new DatagramPacket(recvBuf , recvBuf.length);
            client.receive(recvPacket);
            String recvStr = new String(recvPacket.getData() , 0 ,recvPacket.getLength());
            System.out.println("收到:" + recvStr);
            client.close();
        }
}

 

相关文章:

  • 2021-08-12
  • 2021-08-25
  • 2021-09-03
  • 2022-12-23
  • 2021-12-29
  • 2021-10-26
  • 2021-12-18
猜你喜欢
  • 2022-12-23
  • 2021-09-18
  • 2021-12-13
  • 2021-12-06
  • 2021-11-13
  • 2021-09-11
相关资源
相似解决方案