java发送udp广播包

时间:2023-03-09 07:41:52
java发送udp广播包

2013-06-07 22:44 1272人阅读 评论(2) 收藏 举报

  1. import java.io.IOException;
  2. import java.net.DatagramPacket;
  3. import java.net.DatagramSocket;
  4. import java.net.InetAddress;
  5. import java.net.SocketException;
  6. import java.net.UnknownHostException;
  7. import java.text.SimpleDateFormat;
  8. import java.util.Date;
  9. import java.util.Timer;
  10. public class UdpSend {
  11. public void sendData()throws SocketException,
  12. UnknownHostException{
  13. DatagramSocket ds = new DatagramSocket();// 创建用来发送数据报包的套接字
  14. String str = "hello";
  15. DatagramPacket dp = new DatagramPacket(str.getBytes(),
  16. str.getBytes().length,
  17. InetAddress.getByName("255.255.255.255"), 3001);
  18. // 构造数据报包,用来将长度为 length 的包发送到指定主机上的指定端口号
  19. try {
  20. ds.send(dp);
  21. } catch (IOException e) {
  22. e.printStackTrace();
  23. }
  24. ds.close();
  25. }
  26. public static void main(String[] args) {
  27. Timer timer = new Timer();
  28. timer.schedule(new MyTask(), 1000, 1000);
  29. }
  30. static class MyTask extends java.util.TimerTask{
  31. @Override
  32. public void run() {
  33. UdpSend tt = new UdpSend();
  34. try {
  35. tt.sendData();
  36. } catch (SocketException e) {
  37. // TODO Auto-generated catch block
  38. e.printStackTrace();
  39. } catch (UnknownHostException e) {
  40. // TODO Auto-generated catch block
  41. e.printStackTrace();
  42. }
  43. }
  44. }
  45. }