使用 UDP协议的 Socket 网络程序设计 java编程.doc

使用 UDP协议的 Socket 网络程序设计 java编程.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
使用 UDP协议的 Socket 网络程序设计 java编程

实验四 使用 UDP协议的 Socket 网络程序设计 及实验步骤详解!! 实验目的:掌握 Socket 通讯机制,掌握 DataGramSocket 和 DataGramPacket类和相关方法。 实验要求:通过Socket 编程,掌握网络应用程序的开发方法;掌握利用Java提供的基本组件进行网络传输;掌握 Java 提供的多线程机制,异常处理机制和低层对协议的通信机制,通过 Socket 编程,掌握网络应用程序的开发方法。 1、 import .*; public class DatagramPacketExa { public static void main(String[] args) throws SocketException { String s = This is a test.; byte[] data = s.getBytes(); try { InetAddress ia = InetAddress.getByName(); int port = 7; SocketAddress sa=new InetSocketAddress(ia,port); DatagramPacket dp = new DatagramPacket(data, data.length, ia, port); DatagramPacket dp1= new DatagramPacket(data, data.length, sa); System.out.println(This packet is addressed to: + dp.getAddress()); 分别调用数据报dp的方法, dp.getData(), dp.getOffset(), dp.getLength(),getLength().结果是什么? } catch (UnknownHostException e) { System.err.println(e); } } } 调试并输出结果。 2、编写一个能扫描出本地机所有udp端口的程序。 3、建立三个类,然后运行服务器端和客户端。当客户端启动后,服务器端得到客户端的地址和端口信息,同时客户端会收到客户端发送的reply信息。 类DataGramHelper import .*; public class DataGramHelper { //定义一个数据包 ① public StringtoDatagram(String s, InetAddress ip, int port) { // 将String容纳到Byte数组里 ② byte[] buf = byte[s.length() + 1]; // 调整编码 buf = s.getBytes(); // 返回构造对象 ③ 选择一条语句插到横线空白处,注意要改造一下 DatagramPacket(byte[] buf, int length) 构建数据报包,接收length长度的包并放入buf。 DatagramPacket(byte[] buf, int length, InetAddress address, int port) 构建数据报包,发送length长度的包到address指定的主机的port端口。 return new } public String DatagramtoString(DatagramPacket p) { return new String(p.getData(), 0, p.getLength()); } } 客户端代码 import java.io.*; import java.lang.*; import .*; public class UDPClient { public static void main(String args[]) { // UDP Socket DatagramSocket udpCliSocket; DatagramPacket udpSendPacket; DatagramPacket udpReceivePacket; // 定义报文的工具类 DataGramHelper datapacketHelper = new DataGramHelper(); // 报文字节数组 byte pack

文档评论(0)

pangzilva + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档