SOCKET网络编程..doc

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Socket网络编程学习笔记(1):常用方法介绍 ??????虽然天天上博客园欣赏各位“大侠”的杰作,偶然回首,突然发现自己已成“潜水者”久矣。本来对于自己有限的水平,有点不好意思在此发贴,不过潜伏久了,才慢慢意识到老是通过浏览他人的文章虽然能够提高自己能力,能够及时的获取新技术新思想,但却只能停留在他人的思想上。通过学习,加上自己的想法,再写出来,让大家来指证错误,不仅能够巩固自己的知识,也可以让一些跟我一样迷惘的朋友们不用再去走一些弯路,岂不是两全其美,本着这样的想法,打算把自己平时的所学所想都写下来,欢迎各路朋友批评指证,因为你的批评和建议能够让我更迅速的得到提高。 ??????好了,讲了这么多废话,也该言归正传了。由于工作上需要,最近恶补了一下socket网络编程,整理了一下资料,把它放上来,希望能够对一些朋友有帮助。 ??????在讲Socket编程前,我们先来看一下几个最常用的类和方法,相信这些东西能让你事半功倍。 ??????一、IP地址操作类 ??????1、IPAddress类 ??????a、在该类中有一个?Parse()方法,可以把点分的十进制IP表示转化成IPAddress类,方法如下: ??????IPAddress address = IPAddress.Parse(“192.168.0.1”); ??????b、IPAddress提供4个只读字段 ?????? ??????Any???用于代表本地系统可用的任何IP地址 ??????Broadcase?用于代表本地网络的IP广播地址 ??????Loopback?用于代表系统的回送地址???? ??????None?用于代表系统上没有网络接口 ??????其中IPAddress.Any最常用可以用来表示本机上所有的IP地址,这对于socket服务进行侦听时,最方便使用,不用对每个IP进行侦听了。而IPAddress.Broadcase可用来UDP的IP广播,这些具体讲socket时再详细介绍。 ?????2、IPEndPoint类???????????? ??????我们可以通过二种构造方法来创建IPEndPoint类: ??????a、IPEndPoint(long address, int port) ??????b、IPEndPoint(IPAddress address, int port) ??????四个属性: ??? ??????Address ??????AddressFamily ??????Port ??????MaxPort? ??????MinPort? ??????这些应该从名字上就很好理解,不再一一介绍。IPEndPoint其实就是一个IP地址和端口的绑定,可以代表一个服务,用来Socket通讯。 ???????二、DNS相关类 ??????DNS类有四个静态方法,来获取主机DNS相关信息, ??????1、GetHostName()? ??????通过Dns.GetHostName()可以获得本地计算机的主机名 ??? ??????2、GetHostByName() ??????根据主机名称,返回一个IPHostEntry 对象: ??????? ??????IPHostEntry GetHostByName(string hostName)? ??????其中IPHostEntry把一个DNS主机名与一个别名和IP地址的数组相关联,包含三个属性: ??????AddressList:一个IPAddress对象的数组 ??????Aliases:一个字符串对象数组 ??????HostName:一个用于主机名的字符串对象 ??????3、GetHostByAddress() ??????类似于GetHostByName(),只不过这里的参数是IP地址,而不是主机名,也返回一个IPHostEntry对象。 ??????IPHostEntry GetHostByAddress(IPAddress?address) ??????IPHostEntry GetHostByAddress(string address) ??????4、Resolve()? ??????当我们不知道输入的远程主机的地址是哪种格式时(主机名或IP地址),用以上的二种方法来实现,我们可能还要通过判断客户输入的格式,才能正确使用,但Dns类提供一更简单的方法Resolve(),该方法可以接受或者是主机名格式或者是IP地址格式的任何一种地址,并返回IPHostEntry对象。 Socket网络编程学习笔记(2):面向连接的Socket ?????在上一篇中,我列了一些常用的方法,可以说这些方法是一些辅助性的方法,对于分析网络中的主机属

文档评论(0)

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

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

1亿VIP精品文档

相关文档