public class IPv4Util {
/**
* 把IP地址转化为int
* @param ipAddr
* @return int
*/
public static long ipToInt(String ipAddr) {
try {
String[] ipArr = ipAddr.split("\\.");
StringBuffer sb =new StringBuffer();
for(int i=0;i<ipArr.length;i++){
int a = Integer.valueOf(ipArr[i]);
String a16 = "";
if(a<16){
a16 = String.valueOf(0)+get16(a);
}else{
a16 = get16(a);
}
sb.append(a16);
}
if(get10(sb.toString()) <= 0){
throw new IllegalArgumentException(ipAddr + " is invalid IP");
}
return get10(sb.toString());
} catch (Exception e) {
throw new IllegalArgumentException(ipAddr + " is invalid IP");
}
}
/**
* 十进制转十六进制
* @param x
* @return
*/
public static String get16(int x){
return Integer.toHexString(x);
}
public static long get10(String s){
Long l=Long.parseLong(s, 16);
return l;
//return Integer.parseInt(s, 16);
}
}
分享到:
相关推荐
在某些情况下,我们需要将IP地址转换为Int64格式,这主要出于计算或存储效率的考虑。这种转换在处理大量IP数据时特别有用,例如在网络监控、数据分析或路由表中。 IP地址转换为Int64的过程可以分为以下几个步骤: ...
总结来说,C++中将IP地址转换为四个int型主要是通过字符串操作和整数转换实现的。了解这些基本的编程技巧,能够帮助我们在处理IP地址时更加得心应手。同时,随着技术的发展,如C++11及更高版本提供的新特性,如`std:...
在Java编程中,将IP地址转换为int类型的方法是一个常见的技术问题,这涉及到网络编程的基础知识和位操作。IP地址通常以点分十进制的形式表示(如"192.168.1.116"),而转换为int类型则需要将每个八位段(byte)分别...
在C/C++编程中,有时我们需要将IP地址(通常以字符串形式表示)转换为整数类型,以便于处理和存储。同样,我们也可能需要将整数形式的IP地址转换回原来的字符串格式。本文将详细解释如何进行这两种类型的转换,并...
然而,在某些编程场景下,为了便于计算和存储,我们需要将IP地址转化为长整型(long)数值。这个过程涉及到IPv4地址的二进制表示和整数转换。本文将详细讲解如何实现这一转化,并通过一个简单的源码示例来说明。 ...
首先,我们来看IP地址转换成整数的过程。一个IPv4地址由4个0到255的十进制数字组成,每个数字对应一个8位的二进制位段。这四个位段组合起来就是一个32位的二进制数。转换的步骤包括: 1. 分割IP地址:将输入的IP...
它通过DNS反向查询,将IP地址转换成主机名。 在C语言环境中,这两个函数通常在`<netdb.h>`头文件中定义,并且需要链接到`libresolv`库来实现DNS解析功能。以下是一个简单的示例,展示如何使用这两个函数: ```c #...
现在,让我们看看如何使用`struct`库将IP地址转换为整数,以及将整数转换回IP地址。 **将IP地址转换为整数:** 假设我们有一个IP地址字符串`ip_str`,我们可以通过以下步骤将其转换为整数: 1. 将IP地址字符串拆分...
例如,一个IP地址为192.168.126.2,子网掩码为255.255.255.0,那么可以计算出该IP地址的网段信息。 知识点2:Java语言中的IP地址网段计算 在Java语言中,可以使用java.net包来实现IP地址网段计算。下面是一个示例...
输入将 IP 地址转换为整数,反之亦然。用法 var ipint = require ( 'ipint' ) ;var ip = '174.36.207.186' , int = ipint . ipToInt ( '174.36.207.186' ) ;console . log ( ip + ' => ' + int ) ;console . log ( ...
C#中可以使用`IPAddress.Parse`方法将字符串形式的IP地址转换为`IPAddress`对象,然后使用`GetAddressBytes`获取IP地址的字节表示,最后通过位运算将字节组合成整数。例如: ```csharp IPAddress ipAddress = IP...
本篇文章将详细探讨“IP地址转化算法:二进制转十进制”的原理与实现。 一、IP地址结构 IP地址(Internet Protocol Address)由四部分构成,每部分由一个8位的二进制数组成,称为“字节”或“octet”。在点分十进制...
例如,IP地址192.168.1.1可以转换为十进制整数3232235777,这个数字是通过将每个八位字节转换为十进制并相加得到的:(192 * 256^3) + (168 * 256^2) + (1 * 256^1) + (1 * 256^0)。 要将点分十进制IP转换为十进制...
3. 将这些值转换为十进制,然后用点号(.)连接成IP地址字符串。 Java代码示例: 以下代码展示了如何使用Java实现这些转换功能: ```java public class IPv4Util { // ... public static byte[] ipToBytesByReg...
// 把IP地址转化为int public static int ipToInt(String ipAddr) { // 实现略 } // 字节数组转化为IP public static String bytesToIp(byte[] bytes) { // 实现略 } // 把整数转化为IP地址 public ...
- `ip2Int`:用于将IP地址转换为整型。 - `int2Ip`:用于将整型转换为IP地址。 ```delphi function TForm11.ip2Int(const strIP: string): Int64; ``` **参数说明**: - `strIP`:点分十进制形式的IP地址。 **...
根据版本的不同,IP地址可以分为IPv4和IPv6两种类型。本篇文章主要介绍如何判断一个字符串是否为有效的IPv4地址。 #### 二、IPv4地址格式 IPv4地址由四个十进制数字组成,每个数字范围是0到255,并且各个数字之间用...
通过一定的数学运算,可以将这样的字符串格式转化为一个唯一的整数,便于计算机处理和存储。 #### IP地址转整数的算法原理 以IPv4地址为例,假设一个IP地址为`x.y.z.m`,其中`x, y, z, m`均为0至255之间的十进制数...
本文将详细介绍一个SQL函数——`ConvertIp`,它能够实现将标准的IP地址转换为无点分隔符且补零的字符串形式(例如将`192.168.0.1`转换为`192168000001`)。此外,我们还会探讨该函数的工作原理以及其在实际应用中的...