判斷ip位址是否存在某個網段中

2021-09-11 11:07:35 字數 2824 閱讀 7066

public class ipchangeutils 

count++;

}inetmask += count;

}return inetmask;

}/**

* 功能:根據ip和位數返回該ip網段的所有ip

* 格式:parseipmaskrange("192.192.192.1", "23")

*/public static listparseipmaskrange(string ip, string mask) else

list = parseiprange(startip, endip);

}return list;

}/**

* 功能:根據位數返回ip總數

* 格式:parseipmaskrange("192.192.192.1", "23")

*/public static int getipcount(string mask)

/*** 功能:判斷乙個ip是不是在乙個網段下的

* 格式:isinrange("192.168.8.3", "192.168.9.10/22");

*/public static boolean isinrange(string ip, string cidr)

/*** 功能:根據位數返回ip總數

* 格式:isip("192.192.192.1")

*/public static boolean isip(string str) \\.\\d\\.\\d\\.\\d";

pattern pattern = pattern.compile(regex);

return pattern.matcher(str).matches();

}/**

* 把ip轉換為數字(mysql中inet_aton()的實現)

* @param ip

* @return

*/public static double iptodouble(string ip)

private static stringbuilder tobin(int x)

return result;

}/**

* 根據 ip/掩碼位 計算ip段的起始ip 如 ip串 218.240.38.69/30

** @param ip 給定的ip,如218.240.38.69

* @param maskbit 給定的掩碼位,如30

* @return 起始ip的字串表示

*/private static string getbeginipstr(string ip, string maskbit)

/*** 根據 ip/掩碼位 計算ip段的終止ip 如 ip串 218.240.38.69/30

** @param ip 給定的ip,如218.240.38.69

* @param maskbit 給定的掩碼位,如30

* @return 終止ip的字串表示

*/private static string getendipstr(string ip, string maskbit)

/*** 解析ip範圍

** @param ipfrom

* @param ipto

* @return

*/private static listparseiprange(string ipfrom, string ipto)

for (int a = int_ipf[0]; a <= int_ipt[0]; a++) }}

}return ips;

}/**

* 把long型別的ip轉為一般ip型別:xx.xx.xx.xx

** @param ip

* @return

*/private static string getipfromlong(long ip)

/*** 根據 ip/掩碼位 計算ip段的起始ip 如 ip串 218.240.38.69/30

** @param ip 給定的ip,如218.240.38.69

* @param maskbit 給定的掩碼位,如30

* @return 起始ip的長整型表示

*/private static long getbeginiplong(string ip, string maskbit)

/*** 根據 ip/掩碼位 計算ip段的終止ip 如 ip串 218.240.38.69/30

** @param ip 給定的ip,如218.240.38.69

* @param maskbit 給定的掩碼位,如30

* @return 終止ip的長整型表示

*/private static long getendiplong(string ip, string maskbit)

/*** 把xx.xx.xx.xx型別的轉為long型別的

** @param ip

* @return

*/private static long getipfromstring(string ip)

/*** 根據掩碼位獲取掩碼

** @param maskbit 掩碼位數,如"28"、"30"

* @return

*/private static string getmaskbymaskbit(string maskbit)

private static string getmaskmap(string maskbit)

/*** 測試

*/public static void main(string args)

}

如何判斷IP位址是否在某個IP段中

sql如何判斷ip位址是否在某個ip段中 環境sqlserver 2008 r2 1.我的表結構 ii id 標識 ii startip 開始ip ii endip 結束ip si id 學校id ii state ip狀態是否檢查過 這是我在程式裡使用的 表名ipinfo 2.建立獲取ip函式 c...

sql中判斷是否存在某個物件

if object id n 物件名 n 物件型別 is not null 例如 表是否存在 if object id n tablename n u is not null begin print 存在 end 可選物件型別 af 聚合函式 clr c check約束 d default f fo...

判斷陣列是否存在某個值。

檢查陣列是否包含某個值的方法 使用list public static boolean uselist string arr,string targetvalue 使用set public static boolean useset string arr,string targetvalue 使用迴...