发送端:
package com.softeem.udp;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.InetAddress;
import java.net.MulticastSocket;
public class MulticastDemo {
public static void main(String[] args) throws IOException {
String msg = "本周五下午举办第一次班级过活动,望广大童鞋积极参加,相互转告!!!!";
//创建组播地址对象
InetAddress ip = InetAddress.getByName("228.5.6.7");
//创建数据广播通道对象
MulticastSocket ms = new MulticastSocket();
//将组播地址加入网络通道中
ms.joinGroup(ip);
//将消息内容打包成数据报包
DatagramPacket dp = new DatagramPacket(msg.getBytes(),0, msg.getBytes().length, ip, 6789);
//发送数据广播
ms.send(dp);
ms.close();
}
}
接收端:
package com.softeem.udp;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.InetAddress;
import java.net.MulticastSocket;
public class MulticastDemo_Receiver {
public static void main(String[] args) throws IOException {
InetAddress ip = InetAddress.getByName("228.5.6.7");
MulticastSocket ms = new MulticastSocket(6789);
//将组播地址加入网络通道中
ms.joinGroup(ip);
byte[] b = new byte[1024];
//将消息内容打包成数据报包
DatagramPacket dp = new DatagramPacket(b,b.length);
ms.receive(dp);
String s = new String(dp.getData(),0,dp.getLength());
System.out.println(s);
}
}