1. import java.net.*;
  2.  
  3. /*
  4. 通过UDP传输发送文字数据
  5. 1.建立socket服务
  6. 2.提供数据,并封装到数据包中
  7. 3.通过sokect服务的发送功能,将数据包发送出去
  8. 4.关闭资源
  9. */
  10. class udpsend
  11. {
  12. public static void main(String[] arg) throws Exception {
  13. //1.创建UDP服务。通过DatagramSocket对象
  14. DatagramSocket ds = new DatagramSocket(1234);
  15.  
  16. //2.确定数据并封装成数据包
  17. byte[] buf = "udp is coming".getBytes();
  18. DatagramPacket dp=new DatagramPacket(buf,buf.length,InetAddress.getByName("127.0.0.1"),4567);
  19.  
  20. //3.通过socket服务,将已有的数据包发送出去
  21. ds.send(dp);
  22.  
  23. //4.关闭资源
  24. ds.close();
  25.  
  26. }
  27. }
  28.  
  29. /*需求:定义一个应用程序勇于接收UDP协议传输的数据
  30.  
  31. 思路:
  32. 1.定义udpsocket服务,通常会监听一个端口
  33. 2.定义一个数据包。因为要存储接收到的字节数据
  34. 因为数据包对象中有更多功能可以提取字节数据中的不同数据信息
  35. 3.通过socket服务的receive方法将收到的数据存入已定义好的数据包中
  36. 4.通过数据包对象的特有功能,将这些不同的数据取出,打印在控制台上
  37. 5.关闭资源
  38. */
  39. class udprece
  40. {
  41. public static void main(String[] args) throws Exception{
  42. //1.创建udp,建立端点
  43. DatagramSocket ds=new DatagramSocket(4567);
  44.  
  45. //2.定义数据包,用于存储
  46. byte[] buf=new byte[1024];
  47. DatagramPacket dp=new DatagramPacket(buf,buf.length);
  48.  
  49. //3.通过receive方法间接收到的数据存入数据包中
  50. ds.receive(dp);
  51.  
  52. //4.通过数据包的方法获取其中的数据
  53. String ip=dp.getAddress().getHostAddress();
  54.  
  55. String data=new String(dp.getData(),0,dp.getLength());
  56.  
  57. int port=dp.getPort();
  58.  
  59. System.out.println(ip+":"+port+"------"+data);
  60.  
  61. //5.关闭资源
  62. ds.close();
  63.  
  64. }
  65. }

java udp网络编程的更多相关文章

  1. JAVA UDP网络编程学习笔记

    一.UDP网络编程概述 采用TCP协议通信时,客户端的Socket必须先与服务器建立连接,连接建立成功后,服务器端也会持有客户端连接的Socket,客户端的Socket与服务器端的Socket是对应的 ...

  2. Java UDP网络编程 - 最简单示例

    UDP也是网络通讯中的一个重要协议,与TCP区别可参见浅谈TCP/IP 和 UDP的区别,本文就对Java UDP通讯做一个简单例子介绍 服务端: package wyf; import java.i ...

  3. Java入门网络编程-使用UDP通信

    程序说明: 以下代码,利用java的网络编程,使用UDP通信作为通信协议,描述了一个简易的多人聊天程序,此程序可以使用公网或者是局域网进行聊天,要求有一台服务器.程序一共分为2个包,第一个包:udp, ...

  4. java:网络编程(UDP (DatagramSocket和DatagramPacket)正则表达式)

    java:网络编程(UDP (DatagramSocket和DatagramPacket)正则表达式) * TCP* 特点:面向连接,点对点的通信,效率较低,但安全可靠* UDP:用户数据报协议,类似 ...

  5. 二十三、Java基础--------网络编程

    Java中另一个重要技术就是网络编程了,为了更好的学习web方向的知识,有必要对java之网络编程好好学习,本文将围绕网络编程技术进行分析. 常见的网络协议:UDP.TCP UDP 1. 将数据源和目 ...

  6. JAVA的网络编程

    网络编程 网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无法进入网络编程的大门而放弃了对于该部分技术的学习. 在 学习网络编程以前,很多初学者可能觉得网络编 ...

  7. Java Socket 网络编程心跳设计概念

    Java Socket 网络编程心跳设计概念   1.一般是用来判断对方(设备,进程或其它网元)是否正常动行,一 般采用定时发送简单的通讯包,如果在指定时间段内未收到对方响应,则判断对方已经当掉.用于 ...

  8. 【转】JAVA之网络编程

    转自:火之光 网络编程 网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无法进入网络编程的大门而放弃了对于该部分技术的学习. 在 学习网络编程以前,很多初学者 ...

  9. JAVA的网络编程【转】

    JAVA的网络编程[转] Posted on 2009-12-03 18:04 火之光 阅读(93441) 评论(20) 编辑 收藏 网络编程 网络编程对于很多的初学者来说,都是很向往的一种编程技能, ...

随机推荐

  1. AngularJS中service,factory,provider的区别(转载:http://my.oschina.net/tanweijie/blog/295067)

    目录[-] 一.service引导 二.service 1.factory() ‍2.service()‍ ‍3.provider()‍‍ 一.service引导 刚开始学习Angular的时候,经常 ...

  2. iOS开发 字符串MD5加密

    /*** MD5 ***/ #define CC_MD5_DIGEST_LENGTH    16          /* digest length in bytes */ #define CC_MD ...

  3. 七大查找算法(附C语言代码实现)

    来自:Poll的笔记 - 博客园 链接:http://www.cnblogs.com/maybe2030/p/4715035.html 阅读目录 1.顺序查找 2.二分查找 3.插值查找 4.斐波那契 ...

  4. html年月日下拉联动菜单 年月日三下拉框联动

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. Intellij IDEA中部署Tomcat报错“war exploded: Server is not connected. Deploy is not available”

    最近将本机的Tomcat 7卸载重装了Tomcat 9后,在IDEA中运行Tomcat老是报错,一直未找到解决问题的办法. 只能讲Tomcat重新退回到版本7,才重新再IDEA中运行正常.

  6. Java的内存回收机制

    原文出处: cnblogs-小学徒V 在Java中,它的内存管理包括两方面:内存分配(创建Java对象的时候)和内存回收,这两方面工作都是由JVM自动完成的,降低了Java程序员的学习难度,避免了像C ...

  7. HTTP协议中PUT和POST使用区别 【转载】

    有的观点认为,应该用 POST来创建一个资源,用PUT来更新一个资源:有的观点认为,应该用PUT来创建一个资源,用POST来更新一个资源:还有的观点认为可以用PUT和 POST中任何一个来做创建或者更 ...

  8. PHP慕课网教程

    PHP入门篇:http://www.imooc.com/learn/54 3-2 如何定义变量 ”var_dump”函数可以将我们的变量的数据类型(后面小节会做介绍)显示出来. <?php $v ...

  9. Objective-C:Foundation框架-常用类-NSValue

    NSNumber是NSValue的子类,前者只能包装数字,后者可以包装任意值.NSArray.NSDictionary只能存储OC对象,不能存储结构体.因此,如果想要在NSArray.NSDictio ...

  10. VS复习 -- if···else和if···else嵌套语句

    注意:理清逻辑,画出逻辑分支图,理清思路 1.if语句 2.if...else语句 3.if..else if...else static void Main(string[] args) { Con ...