Convert IP address to integer and back
/** * 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); }
posted on 2012-09-05 23:02 Xingning Ou 阅读(298) 评论(0) 编辑 收藏 举报