第03章IP地址转换与网卡信息检测.ppt

  1. 1、本文档共51页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
例3-2 运行结果 3.2.3 Ping及其相关类(续) PingOptions类:控制如何传输 Ping 数据包。与此类相关的属性有: Ttl 属性 为 Ping 类发送的数据包指定生存时间。此值指示在丢弃 Ping 数据包之前可以转发此数据包的路由节点数。如果要测试将数据包从源计算机发送到目标计算机所需的转发数(也称为跃点),设置此选项很有用。 DontFragment 属性 控制是否可将发送到远程主机的数据分成多个数据包。如果要测试用于传输数据包的路由器和网关的最大传输单元 (MTU),此选项很有用。 3.2.3 Ping及其相关类(续) PingReply类 调用Ping类的Send方法后,即得到PingReply类的实例,该实例提供有关Send或SendAsync操作的状态以及发送请求和接收答复所用的时间等信息。常用属性有 1. Address属性: 获取发送回送答复消息的主机地址 2. RoundtripTime属性: 获取发送消息所用的往返时间 3. Status属性: 获取答复的状态,为IPStatus枚举类型。如果值为IPStatus.Success则代表Send方法执行成功 3.2.3 Ping及其相关类(续) 【例3-4】Ping类的用法。 3.3 网络数据编码与解码 3.3.1 Encoding类 3.3.2 Encoder类和Decoder类 3.3 网络数据编码与解码 编码:是指将一组字符转换为一个字节序列的过程。 解码:将一个编码字节序列转换为一组字符的过程。 为什么需要编码和解码 因为通过网络传递的数据必须是字节序列。 常用编码:ASCII、Unicode、UTF8、国标码 3.3 网络数据编码与解码 常用编码 ASCII码:每个字符均为7位,主要针对英文。 UNICODE码:每个字符均占两个字节。 UTF码:通用转换码,主要解决编码容量问题.常用有 (1)UTF-8:用1到4个字节编码一个UNICODE字符 (2)UTF-16:将每个字符编码为1至2个16位整数组成的序列(两字节) (3)UTF-32:将每个字符编码为一个32位整数(4字节) 国标码:常用有 GB2312(1980年公布) GB18030(2000年公布) 3.3.1 Encoding类 Encoding类位于System.Text命名空间中。常用属性及方法如下: 名称 说明 Default属性 获取系统的当前ANSI代码页的编码 Unicode属性 获取使用 Little-Endian 字节顺序的 UTF-16 格式的编码 UTF8属性 获取UTF-8格式的编码 Convert方法 将字节数组从一种编码转换为另一种编码 GetBytes方法 将一组字符编码为一个字节序列 GetString方法 将一个字节序列解码为一个字符串 GetEncoder方法 获取一个解码器,该解码器将Unicode字符序列转换为已编码的字节序列 GetDecoder方法 获取一个解码器,该解码器将已编码的字节序列转换为字符序列 3.3.1 Encoding类(续) 1.获取所有编码名称及其描述信息 GetEncodings方法获得包含所有编码的EncodingInfo数组。下面的代码可以获取所有编码的名称及其名称描述。 foreach (EncodingInfo ei in Encoding.GetEncodings()) { Encoding en = ei.GetEncoding(); listBox1.Items.Add(string.Format({0,-18}{1}, ei.Name, en.EncodingName)); } 3.3.1 Encoding类(续) 2.获取某个指定的编码描述信息 1)访问UTF8、ASCII等属性,直接获得其他非Unicode的某个指定字符集的编码实例。 Encoding ASCIIEncode = Encoding.ASCII; 2)利用静态方法GetEndcoing来获取编码实例,例如: Encoding GB2312Encoding = Encoding.GetEncoding(GB2312); 3)访问HeaderName属性,获取指定编码的名称 listBox1.Items.Add(GB2312Encoding. HeaderName); 4)访问EncodingName属性,显示指定编码的名称描述 listBox1.Items.Add(GB2312Encoding.EncodingName); 3.3.1 E

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档