C#斷定給定IP地址能否在指定規模內的辦法。本站提示廣大學習愛好者:(C#斷定給定IP地址能否在指定規模內的辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是C#斷定給定IP地址能否在指定規模內的辦法正文
本文實例講述了C#斷定給定IP地址能否在指定規模內的辦法。分享給年夜家供年夜家參考。詳細剖析以下:
好比給定一個ip段:127.0.0.1 ~ 127.0.0.255,我們想斷定一個給定的ip地址能否在此段內,可以先將ip地址轉換成整數,然後整數比擬年夜小就很輕易了。
例如:
127.0.0.1 = 2130706433
127.0.0.255 = 2130706687
斷定:
127.0.1.253 = 2130706941
能否在此規模內,直接比擬整數年夜小便可
將ip地址轉換成整數:
public static long IP2Long(string ip)
{
string[] ipBytes;
double num = 0;
if(!string.IsNullOrEmpty(ip))
{
ipBytes = ip.Split('.');
for (int i = ipBytes.Length - 1; i >= 0; i--)
{
num += ((int.Parse(ipBytes[i]) % 256) * Math.Pow(256, (3 - i)));
}
}
return (long)num;
}
斷定給定ip地址能否在指定規模內:
long start = IP2Long("127.0.0.1");
long end = IP2Long("127.0.0.255");
long ipAddress = IP2Long("127.0.1.253");
bool inRange = (ipAddress >= start && ipAddress <= end);
if (inRange){
//IP Address fits within range!
}
願望本文所述對年夜家的C#法式設計有所贊助。