/**
* Convert an IPv4 to a long number.
*
* @param ip
* IPv4
* @return a long number represents an IPv4
*/
public static long ip2Long(String ip) {
long num = 0
;
String[] ipArray = ip.split("\\."
);
for (
int i = 0; i < ipArray.length; i++
) {
int power = 3 -
i;
num += (Integer.parseInt(ipArray[i]) % 256 * Math.pow(256
, power));
}
return num;
}
/**
* Convert a long number to an IPv4
*
* @param num
* a long number represents an IPv4
* @return an IPv4
*/
public static String long2Ip(
long num) {
return ((num >> 24) & 0xFF) + "." + ((num >> 16) & 0xFF) + "."
+ ((num >> 8) & 0xFF) + "." + (num & 0xFF
);
}
转载于:https://www.cnblogs.com/ouxingning/archive/2012/09/05/convert_ip_to_integer_and_back.html