- 浏览: 304022 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (405)
- linux (31)
- java (144)
- mysql (52)
- html (19)
- oracle (8)
- sql (12)
- 无题 (5)
- js (16)
- android (4)
- tomcat (4)
- struts (2)
- spring (12)
- elcipse (2)
- shell (7)
- interview (2)
- redis (6)
- apache (2)
- maven (10)
- mq (6)
- kengen (0)
- windows (3)
- css (1)
- nginx (2)
- google (1)
- zk (1)
- ibm (1)
- git (1)
- mvn (1)
- jms (1)
- uml (1)
最新评论
package com.juanpi.order.common; import java.net.InetAddress; import java.net.UnknownHostException; /** * @author jis117@yahoo.com * */ public class Ip2Number { /** * @param ip * @return 有符号的整形数;当ip>128.0.0.0时为负数; * @throws UnknownHostException * @author wenc */ public static int ip2Int(String ip) throws Exception { InetAddress address = InetAddress.getByName(ip);// 在给定主机名的情况下确定主机的 IP 址。 byte[] bytes = address.getAddress();// 返回此 InetAddress 对象的原始 IP 地址 int a, b, c, d; a = byte2int(bytes[0]); b = byte2int(bytes[1]); c = byte2int(bytes[2]); d = byte2int(bytes[3]); int result = (a << 24) | (b << 16) | (c << 8) | d; return result; } public static int byte2int(byte b) { int l = b & 0x07f; if (b < 0) { l |= 0x80; } return l; } /** * @param ip * @return IP转化为长整形数值 * @throws UnknownHostException * @author wenc */ public static long ip2long(String ip) throws Exception { int ipNum = ip2Int(ip); return int2long(ipNum); } public static long int2long(int i) { long l = i & 0x7fffffffL; if (i < 0) { l |= 0x080000000L; } return l; } /** * @param ip * @return 长整形数值转化为ip地址 * @author wenc */ public static String long2ip(long ip) { int[] b = new int[4]; b[0] = (int) ((ip >> 24) & 0xff); b[1] = (int) ((ip >> 16) & 0xff); b[2] = (int) ((ip >> 8) & 0xff); b[3] = (int) (ip & 0xff); String x = Integer.toString(b[0]) + "." + Integer.toString(b[1]) + "." + Integer.toString(b[2]) + "." + Integer.toString(b[3]); return x; } }
发表评论
-
adfasdfsdf
2017-03-23 08:38 502package com.twsz.creative.elv ... -
经典技术书籍
2016-12-08 11:00 423这个列表包括了 100 多本经典技术书籍,涵盖:计算机系统 ... -
分割字符串
2016-11-18 18:57 508@Test public void test2() { ... -
BD音乐部分接口
2016-11-15 15:45 685歌曲ID 详细信息接口:http://tingapi.ti ... -
限速器
2016-09-30 16:28 493package test.date; import ... -
Maven SCOPE
2016-09-29 23:34 390在Maven的依赖管理中, ... -
Twitter snowFlake
2016-09-19 22:22 416package com.netty.test.netty4 ... -
Spring BOOT生成web项目
2016-08-29 17:46 806https://github.com/spring-pro ... -
获取IP地址
2016-08-29 17:31 581import java.net.Inet4Address; ... -
Java Performance Tuning Guide
2016-08-29 15:14 338http://java-performance.info/ ... -
Nexus
2016-08-26 00:51 4132、创建解压目录,并将apache-maven-3.0-b ... -
Chain
2016-08-25 12:25 358public static void main(Strin ... -
Spring Boot
2016-08-23 12:50 516package com; import org.sp ... -
JAVA Seriesization
2016-08-16 15:28 515http://www.th7.cn/Program/And ... -
字节码
2016-08-12 19:42 479http://www.blogjava.net/libin ... -
回调在JSMTemplate的位置
2016-08-11 21:55 324package test; public class ... -
原生activeMQ支持
2016-08-10 20:40 428http://www.cnblogs.com/xwdrea ... -
activeMQ
2016-08-09 13:06 392http://www.open-open.com/lib/ ... -
logback
2016-08-05 10:45 485logback logback.xml常用配置详解(二)& ... -
uml
2016-08-03 21:32 360UML建模语言7种图(以银行ATM系统为例) http: ...
相关推荐
Java_IPv4转换_ip2long_long2IP,与php/java/javascript互相兼容
`ip2long`和`long2ip`函数就是用于实现这种转换的工具。这两个函数通常在PHP中使用,但其他编程语言中也有类似功能的函数。 `ip2long`函数的主要作用是将IPv4地址(例如"192.168.1.1")转换为32位无符号整型数值。...
`ip2long` 和 `long2ip` 这两个函数提供了解决这个问题的便捷方式。本文将详细讨论`ip2long` 函数出现负数的原因以及相应的解决方法。 `ip2long` 是一个PHP内置函数,其功能是将一个符合标准格式的IPv4地址转换为32...
本文实例讲述了go语言版的ip2long函数。分享给大家供大家参考。具体分析如下: 这里介绍的go语言版的ip2long 函数不会对 IP 的合法性进行校验。 代码如下:// 注意: 该函数不会对 IP 的合法性进行校验 func Ip2Long...
`ip2long()`函数在处理这种点分十进制格式的IP地址时,会将其转换为单一的32位数字,便于存储和计算。 首先,让我们深入理解`ip2long()`的工作原理。对于一个IP地址,例如"10.2.1.3",它实际上可以被视为一个32位二...
另一种方法是先使用`ip2long()`将IP地址转换为有符号的32位整数,然后将这个整数转换为二进制,再将二进制字符串转换回十进制。这可以避免整数溢出的问题: ```php $strIp = '182.118.0.0'; echo bindec(decbin...
在提供的"IP2Long.txt"文件中,可能包含了更多关于此话题的源码或解释。阅读该文件可以进一步了解IP地址转长整型的细节和应用。在实际编程中,我们应确保正确处理各种边界情况,如无效的IP地址、异常处理等,以确保...
$ipLong = ip2long($ip); if ($ipLong === false) { return '无效的IP地址'; } $result = null; foreach ($ipData as $range) { if ($ipLong >= $range['start'] && $ipLong $range['end']) { $result = $...
if (ip2long($ip) >= ip2long($start_ip) && ip2long($ip) <= ip2long($end_ip)) { return $location; } } return '未知'; } // 使用示例 $ip = '192.168.0.1'; echo ip_location($ip); // 输出对应位置信息 `...
- `long2ip()`:将长整型数字转换回IP地址。 - `filter_var()`:配合`FILTER_VALIDATE_IP`可以验证IP地址的有效性,同时可以指定是否接受IPv4、IPv6或者两者。 4. **IP数据库的使用**: - 如`ipdata.db`这样的...
可使用Ip2long.java中的ip2long(String ip)方法将您的IP转换成长整型。 用以下语句查出相应的记录 SELECT description FROM wn_ip_dic WHERE #ip# >= startip and #ip# LIMIT 1 --------------------...
$ipLong = ip2long($ip); if ($ipLong === false) { return "无效的IP地址"; } $file = fopen("qqwry.dat", "rb"); if (!$file) { return "无法打开数据库文件"; } $offset = 0x3e8; // 跳过文件头 $...
$ip_long = ip2long($ip); if ($ip_long === false) { return "无效的IP地址"; } $begin = $end = 0; while (true) { $data = unpack('N2', fread($fp, 8)); $begin = $data[1]; $end = $data[2]; if ...
这可能涉及到IP地址的比较操作,可以使用`ip2long()`函数将IP地址转换为整型,便于比较。 最后,返回查询结果。这部分可能涉及JSON、XML或其他格式的数据结构,以便前端展示。确保编码正确,避免出现乱码,可以使用...