Java发送和接收广播

来源:互联网 发布:土木工程要学c语言 编辑:程序博客网 时间:2024/05/16 11:54
public class Broadcast extends Thread {private final int port;public Broadcast(int port) {this.port = port;}@Overridepublic void run() {try {receive();} catch (IOException e) {e.printStackTrace();}}private void receive() throws IOException {byte[] buffer = new byte[65507];@SuppressWarnings("resource")DatagramSocket ds = new DatagramSocket(port);DatagramPacket packet = new DatagramPacket(buffer, buffer.length);while (true) {ds.receive(packet);String s = new String(packet.getData(), 0, packet.getLength());System.out.println(packet.getAddress() + ":" + packet.getPort() + "    →    " + s);}}public void send(String msg, int port) throws IOException {DatagramSocket ds = new DatagramSocket();DatagramPacket dp = new DatagramPacket(msg.getBytes(), msg.getBytes().length,InetAddress.getByName("255.255.255.255"), port);ds.send(dp);ds.close();}}

原创粉丝点击