可能重複:
.NET Equivalant for INET_NTOA and INET_ATON
How to convert an IPv4 address into a integer in C#?轉換IP地址轉換成int(即INET航標在C#)
如何執行在C#中相同的UNIX功能INET_ATON?
可能重複:
.NET Equivalant for INET_NTOA and INET_ATON
How to convert an IPv4 address into a integer in C#?轉換IP地址轉換成int(即INET航標在C#)
如何執行在C#中相同的UNIX功能INET_ATON?
public int ToInteger(int A, int B, int C, int D)
{
return Convert.ToInt32((A* Math.Pow(256, 3)) + (B* Math.Pow(256, 2)) + (C* 256) + D);
}
或http://msdn.microsoft.com/en-us/library/system.net.ipaddress.parse.aspx
像我一樣,你可以擴展自己的IP類。
退房IPAddress類的IPAddress.Parse(或的TryParse)方法。
一個例子是:
static int IPStringToInt(string ipAddress)
{
IPAddress address = IPAddress.Parse(ipAddress);
byte[] asBytes = address.GetAddressBytes();
if(asBytes.Length != 4)
{
throw new ArgumentException("IP Address must be an IPv4 address");
}
return BitConverter.ToInt32(asBytes, 0);
}
你需要考慮到各字節的主機和網絡秩序,但有對IPAddress類一些靜態方法用於處理。
我想001自己什麼都做不了。 – 2011-01-08 22:18:18