天天看點

UDP協定的發送端和接收端發送端接收端 

發送端

package Socket;

import java.io.IOException;
import java.net.*;
//UDP傳輸   發送端
public class Send {
    public static void main(String[] args) throws IOException {
        System.out.println("發送端啟動......");

        DatagramSocket datagramSocket  = new DatagramSocket();
        String str = "我是發送端  哥們 我來了哈哈哈哈";
        byte [] b = str.getBytes();
        //InetAddress.getByname(“192.168.1.0.1”)
        DatagramPacket datagramPacket = new DatagramPacket(b,b.length,InetAddress.getLocalHost(),10000);
        datagramSocket.send(datagramPacket);
        datagramSocket.close();
    }
}
           

接收端

package Socket;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
//UDP傳輸   接收端
public class Receive {
//        private static final int timeout =3000;
    public static void main(String[] args) throws IOException {

        System.out.println("接收端啟動........");
        DatagramSocket datagramSocket = new DatagramSocket(10000);
        byte [] b = new byte[1024];

        DatagramPacket datagramPacket = new DatagramPacket(b,b.length);
        datagramSocket.receive(datagramPacket);
       int port= datagramPacket.getPort();
       String ip= datagramPacket.getAddress().getHostAddress();
        String data=new String(datagramPacket.getData(),0,datagramPacket.getLength());
        System.out.println(port+ip+"\r\n"+data);
        datagramSocket.close();
    }
}