Search code examples
javaudpdatagram

Byte buffer transfer via UDP


Can you provide an example of a byte buffer transferred between two java classes via UDP datagram?


Solution

  • Hows' this ?

    import java.io.IOException;
    import java.net.DatagramPacket;
    import java.net.DatagramSocket;
    import java.net.InetSocketAddress;
    
    
    public class Server {
    
        public static void main(String[] args) throws IOException {
            DatagramSocket socket = new DatagramSocket(new InetSocketAddress(5000));
            byte[] message = new byte[512];
            DatagramPacket packet = new DatagramPacket(message, message.length);
            socket.receive(packet);
            System.out.println(new String(packet.getData(), packet.getOffset(), packet.getLength()));
        }
    }
    
    import java.io.IOException;
    import java.net.DatagramPacket;
    import java.net.DatagramSocket;
    import java.net.InetSocketAddress;
    
    
    public class Client {
    
        public static void main(String[] args) throws IOException {
            DatagramSocket socket = new DatagramSocket();
            socket.connect(new InetSocketAddress(5000));
            byte[] message = "Oh Hai!".getBytes();
            DatagramPacket packet = new DatagramPacket(message, message.length);
            socket.send(packet);
        }
    }