C#-----网络编程基础 IPAddress类
IPAddress类IPAddress类主要提供网际协议(IP)地址。构造IP地址实例是通过IPAddress类来实现的。程序中构造IP地址实例是可以使用IPAdress类的构造函数。构造函数如下表所示
构造函数名称 说明
IPAdress(Byte[]) 用指定Byte数组的地址初始化IPAdress类的新实例
IPAdress(Int64) 用指定Int64的地址初始化IPAdress类的新实例
IPAdress(Byte[],Int64) 用指定Byte数组的地址和指定范围标识符初始化IPAdress类的新实例
IPAdress类的构造函数中的参数是指定IP地址的数值。例如如果参数值为265,此构造函数得到的IPAdress实例为“0.1.0.0”;同样参数值为65536,构造后的IP地址就为“0.0.1.0”,依次类推,由此可见,在程序中使用这个构造函数来构造IPAdress实例不仅繁琐而且很不直观。
一个IPAdress地址对象用来表示一个单一的IP地址,在构造IP地址的实例时,通常不需要使用构造函数,因为在该类里有许多成员用来构造并操作IP地址对象。
方法名称 说明
Parse 将IP地址字符串转换为IPAdress实例
TryParse 确定字符串是否为有效的IP地址
MapToIPv4 将IPAddress对象映射到IPv4地址
IsLoopback 指示指定IP是否是回环地址
GetAddressBytes 以字节数组形式提供IPAddress的副本
Equals 比较两个IP地址
上述IPAddress类成员方法提供了对IP地址的转换,处理等功能。其中Parse方法可将IP地址字符串转换为IPAddress实例
如:
IPAddress newaddress=IPAddress.Parse(“192.168.1.1”);
IPAddress类还提供了7个只读属性
属性名称 说明
Any 表示本地系统可用的任何IP地址,指示服务器应侦听所有网络接口上的客户端活动 Broadcast 表示本地网络的IP广播地址
IPv6Any Socket.Bind方法用次字段指出本地系统可用的IP地址
IPv6Loopback 表示系统的回送地址
IPv6None 以字节数组形式提供IPAdress的副本
Loopback 表示系统的回送地址
None 表示系统上没有可用的网络接口
范例
////将地址字符串转换为IPAdress实例 IPAddress test1 = IPAddress.Parse("192.168.1.1"); Console.WriteLine("测试IP{0}", test1); IPAddress test2 = IPAddress.Loopback; IPAddress test3 = IPAddress.Broadcast; IPAddress test4 = IPAddress.Any;//提供一个IP,将指示服务器侦听所有的网络接口上的网络客户端活动 IPAddress test5 = IPAddress.None;//表示不指定系统的任何网络接口 if(IPAddress.IsLoopback(test2)) { Console.WriteLine("The Loopback addressis:{0}", test2.ToString()); } else { Console.WriteLine("Error obtaining the loopback address"); Console.WriteLine("The loopback address is not the local address.\n"); Console.WriteLine("The tset address is:{0}", test1.ToString()); Console.WriteLine("Broadcast address :{0}", test3.ToString()); Console.WriteLine("The Any address is :{0}", test4.ToString()); Console.WriteLine("The None address is:{0}", test5.ToString()); } Console.ReadKey();
////将地址字符串转换为IPAdress实例
IPAddress test1 = IPAddress.Parse("192.168.1.1");
Console.WriteLine("测试IP{0}", test1);
IPAddress test2 = IPAddress.Loopback;
IPAddress test3 = IPAddress.Broadcast;
IPAddress test4 = IPAddress.Any;//提供一个IP,将指示服务器侦听所有的网络接口上的网络客户端活动
IPAddress test5 = IPAddress.None;//表示不指定系统的任何网络接口
if(IPAddress.IsLoopback(test2))
{
Console.WriteLine("The Loopback addressis:{0}", test2.ToString());
}
else
{
Console.WriteLine("Error obtaining the loopback address");
Console.WriteLine("The loopback address is not the local address.\n");
Console.WriteLine("The tset address is:{0}", test1.ToString());
Console.WriteLine("Broadcast address :{0}", test3.ToString());
Console.WriteLine("The Any address is :{0}", test4.ToString());
Console.WriteLine("The None address is:{0}", test5.ToString());
}
Console.ReadKey(); 新人贴不喜勿喷 楼主是学生么{:301_1009:} 葫芦炒鸡蛋 发表于 2018-2-23 00:13
楼主是学生么
怎么了啊???? 感谢分享 感谢支持.... 收藏了
感谢分享 感谢支持 求评论。。。
页:
[1]
2