/**
* 根据ip地址计算出long型的数据
* @param ipStr
* @return
*/
public static long ip2Long(String strIP){
long[] ip=new long[4];
//先找到IP地址字符串中.的位置
int position1=strIP.indexOf(".");
int position2=strIP.indexOf(".",position1+1);
int position3=strIP.indexOf(".",position2+1);
//将每个.之间的字符串转换成整型
ip[0]=Long.parseLong(strIP.substring(0,position1));
ip[1]=Long.parseLong(strIP.substring(position1+1,position2));
ip[2]=Long.parseLong(strIP.substring(position2+1,position3));
ip[3]=Long.parseLong(strIP.substring(position3+1));
return (ip[0]<<24)+(ip[1]<<16)+(ip[2]<<8)+ip[3];
}
//将10进制整数形式转换成127.0.0.1形式的IP地址
public static String long2IP(long longIP){
StringBuffer sb=new StringBuffer("");
//直接右移24位
sb.append(String.valueOf(longIP>>>24));
sb.append(".");
//将高8位置0,然后右移16位
sb.append(String.valueOf((longIP&0x00FFFFFF)>>>16));
sb.append(".");
sb.append(String.valueOf((longIP&0x0000FFFF)>>>8));
sb.append(".");
sb.append(String.valueOf(longIP&0x000000FF));
return sb.toString();
}
分享到:
相关推荐
### IP与数字互相转换C# #### 知识点概述 在计算机网络中,IP地址是设备在网络中的唯一标识。IPv4地址通常表示为四个十进制数字(每个数字范围0到255),用点号分隔。例如:`192.168.1.1`。在某些应用场景下,将...
在IT行业中,网络编程是不可或缺的一部分,而IP地址与数字之间的转换经常出现在各种网络操作中。`ip2long`和`long2ip`是两个在PHP中常用的函数,用于将IPv4地址转换为整型数字(长整型)以及将整型数字还原为IPv4...
在IT领域,网络编程是不可或缺的一部分,而IP地址与数字之间的转换则是网络编程中的常见操作。本文将深入探讨如何使用PHP实现IP地址与数字(通常称为整型或长整型)之间的相互转换,同时参考提供的博客链接:[链接已...
* 数据存储:在数据存储中,IP地址和数字相互转换可以用来存储和处理IP地址信息。 * 网站开发:在网站开发中,IP地址和数字相互转换可以用来实现IP地址的验证和处理。 知识点5:总结 Java编程IP地址和数字相互转换...
在Java编程中,IP地址与十进制数之间的转换是一个常见的需求,特别是在网络编程和数据处理中。IP地址通常以点分十进制(dotted decimal notation)的形式表示,如"192.168.1.1",而计算机内部则是以32位无符号整数的...
在实际应用中,将IP地址转换为整型并存储在数据库中,相比存储为字符串类型,可以有效地减少索引的大小并提升查询效率,尤其是当处理大量数据或者需要进行IP段查询时。在进行IP转换时,必须注意ip2long函数的潜在...
### IP地址与十进制整数的转换 在计算机网络领域中,IP地址是设备在网络中的唯一标识。...通过以上两个方法,我们可以实现IP地址与十进制整数之间的相互转换,从而更好地处理网络相关的数据和逻辑。
- **进制转换在实际应用中的场景**:如网络协议解析(IP地址、MAC地址的处理)、计算机存储(二进制表示内存和硬盘上的数据)、编码系统(ASCII、Unicode等)等。 - **进制转换的局限性**:虽然VB提供了基础的转换...
例如,网络协议中的IP地址和端口号通常用二进制表示,而编程时需要进行解析和处理。位操作如按位与(&),按位或(|),按位异或(^)等也涉及到二进制数的转换。 五、总结 理解和掌握二进制和十进制之间的转换是编程...
### 大小端字节序概念与转换 #### 一、引言 在计算机系统中,数据的存储和传输方式至关重要。特别是在网络通信领域,不同的系统可能会采用不同的字节序来存储多字节数据,这可能导致数据解释上的不一致。因此,理解...
在处理IP地址时,经常需要将点分十进制的字符串形式与`in_addr`结构体之间的相互转换。`inet_aton()`函数用于将点分十进制字符串转换为`in_addr`结构体,而`inet_ntoa()`函数则执行反向操作,将`in_addr`结构体表示...
将IP地址从字符串形式转换为二进制形式,可以使用`inet_addr()`,反之用`inet_ntoa()`: ```c unsigned long inet_addr(const char *cp); char * inet_ntoa(in_addr in); ``` 通过域名获取IP地址,可以使用`get...
在Android编程中,IP2ID程序是一个实用工具,它的主要目的是将IP地址转换为特定的ID号,这种转换在某些项目中可能非常有用,比如在为网络设备分配唯一标识时。下面我们将深入探讨这个程序实例的实现细节以及相关知识...
- **数据类型转换**:在C语言中,不同类型之间的数据可以通过显式类型转换来相互赋值。例如,整型变量可以直接赋值给长整型变量,但长整型变量赋值给整型变量时需要显式转换类型。 - **错误案例**:`i=j`(其中`i`为...
错误的说法是IP地址由32位十进制数组成,实际上每个部分都是8位二进制转换成的十进制数。 【关系数据库术语】关系数据库中,记录、字段和数据项是基本术语,而"模型"更倾向于描述数据库的整体设计,如ER模型或关系...
- **基本整型**:Java提供了多种整型数据类型,如int、long等,它们需要转换成字节序列才能在网络上传输。 - **字符串和文本**:字符串通常使用UTF-8编码进行传输。 - **位操作**:对于布尔值和其他特殊类型的...
- **解释**:Java中数值数据类型的转换顺序是`byte`→`short`→`int`→`long`→`float`→`double`。这是因为数据类型的宽度依次增加,从较小的数据类型向较大的数据类型转换时不会丢失精度。 ### 6. PowerPoint的...
15. Java数据类型转换:自动类型转换顺序是从小到大,即byte→short→int→long→float→double,B选项正确。 16. 面向对象编程:面向对象中,对象之间相对独立,相互依赖性小,C选项正确。 17. 数据库三级模式:...