JAVA_UDP发送端和接受端

转自 http://blog.csdn.net/zjqlovelyy/article/details/8544774

  1. /* 
  2.  
  3.  
  4.     通过UDP传输方式,将一段文字数据发送出去 
  5. 1.建立udpsocket服务 
  6. 2.提供数据,并将数据封装到数据包中。 
  7. 3.通过socket服务的发送功能。将数据包发出去 
  8. 4.关闭资源 
  9.  
  10. 类: 
  11.     DatagramPacket  封装数据包 
  12.     DatagramSocket  创建UDP服务 
  13. */  
  14.   
  15.   
  16. import java.net.*;  
  17.   
  18. class UdpSend  
  19. {  
  20.     public static void main(String[] args)throws Exception   
  21.     {  
  22.         DatagramSocket ds  = new DatagramSocket();  
  23.         byte[] buf = "UDP Demo".getBytes();  
  24.         DatagramPacket dp = new DatagramPacket(buf,buf.length,InetAddress.getByName("127.0.0.1"),10000);//10000为定义的端口     
  25.         ds.send(dp);  
  26.         ds.close();  
  27.     }  
  28. }  
  29.   
  30. /* 
  31.     定义一个应用程序,用于接受udp协议传输的数据并处理 
  32. 1.定义udpsocket服务 
  33. 2.定义一个数据包类,用于存放接受到的数据包(字节数据)。并使用该类处理数据 
  34. 3.通过socket服务的receive方法接受的数据出入已定义的数据包类中 
  35. 4.使用数据包类功能处理数据 
  36. 5.关闭资源 
  37. */  
  38.   
  39.   
  40. class UdpReceive  
  41. {  
  42.     public static void main(String[] args)throws Exception  
  43.     {  
  44.         //创建UDP socket,建立端点  
  45.         DatagramSocket ds = new DatagramSocket(10000);  //监听10000端口  
  46.   
  47.         //定义数据包,用于存储数据  
  48.         byte[] buf = new byte[1024];  
  49.         DatagramPacket dp = new DatagramPacket(buf,buf.length);  
  50.   
  51.         ds.receive(dp);   
  52.   
  53.         String ip = dp.getAddress().getHostAddress();   //数据提取  
  54.         String data = new String(dp.getData(),0,dp.getLength());  
  55.         int port = dp.getPort();  
  56.         System.out.println(data+"."+port+".."+ip);  
  57.         ds.close();  
  58.     }  
  59. }  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值