`
sunwch
  • 浏览: 169917 次
  • 性别: Icon_minigender_1
  • 来自: free-town
社区版块
存档分类
最新评论

java ip转换

 
阅读更多
代码仅供参考,没做任何异常处理..
public static void main(String[] args) {
String ip = "127.0.0.1";
String[] toArray = ip.split("\\.");
long ipToLong = 0L;
ipToLong = ((Long.parseLong(toArray[0])) << 24) + (Long.parseLong(toArray[1]) << 16) + (Long.parseLong(toArray[2]) << + (Long.parseLong(toArray[3]));
System.out.println("ipToLong: " + ipToLong);

StringBuilder sbIns = new StringBuilder();
sbIns.append(ipToLong >>> 24);
sbIns.append(".");
sbIns.append((ipToLong & 0x00FFFFFF) >>> 16);
sbIns.append(".");
sbIns.append((ipToLong & 0x0000FFFF) >>>;
sbIns.append(".");
sbIns.append(ipToLong & 0x000000FF);
System.out.println("longToIp: " + sbIns.toString());

StringBuilder sb = new StringBuilder();
StringBuilder ipToBinary = null;
for(String ipNo : toArray){
ipToBinary = new StringBuilder();
String result = toBinary(Integer.parseInt(ipNo),ipToBinary);
sb.append(result);

}

System.out.println("binary: " + sb.toString());
}

private static String toBinary(int ip,StringBuilder sb){
int val = (ip >>> 1);
int mod = (ip % 2);
sb.append(mod);
if(val > 1){
toBinary(val, sb);
}else{
sb.append(val);
}

paddingZero(sb);
// sb.reverse();
char[] ch = sb.toString().toCharArray();
char[] reverse = new char[ch.length];
int length = (reverse.length - 1);
int reverseIdx = 0;
for(int i = length; i >= 0; i--){
reverse[reverseIdx++] = ch[i];
}

return (String.valueOf(reverse));
}

private static StringBuilder paddingZero(StringBuilder ipNodeBinary){
int length = ipNodeBinary.length();
int paddingZeroLength = (8 - length);
for(int i = 0; i < paddingZeroLength; i++){
ipNodeBinary.append("0");
}

return ipNodeBinary;
}
分享到:
评论

相关推荐

    java IP地址工具类,java IP地址获取,java获取客户端IP地址

    在Java编程中,获取IP地址是一项常见的任务,特别是在网络编程和服务器开发中。这个"java IP地址工具类"是为了解决这个问题而设计的。它提供了便捷的方法来获取和处理IP地址,尤其对于获取客户端IP地址在Web应用中至...

    java IP 库 ip

    总的来说,这个Java项目提供了一种离线方式来处理IP查询,这对于那些需要高效、本地化的IP地址到地理位置转换的应用来说非常有用。它可能涉及到自定义的文件读取、解析和索引机制,这些都是Java程序员需要掌握的重要...

    Java_IPv4转换_ip2long_long2IP

    Java_IPv4转换_ip2long_long2IP,与php/java/javascript互相兼容

    java根据ip反查省市县地址

    在Java编程中,根据IP地址反查对应的省市县地址是一项常见的需求,这通常涉及到网络编程和地理信息系统(GIS)的应用。下面将详细讲解如何利用Java实现这一功能。 首先,我们需要理解IP地址的基本概念。IP地址是由...

    java ip地址段计算

    输入IP地址及掩码(如24),计算出地址范围 1、计算出掩码指定的IP地址个数 2、分割IP地址 3、将10.0.0.0形式的ip地址转换成10进制整数 4、将10进制整数形式转换成127.0.0.1形式的IP地址

    java IP库实现

    在Java中,`java.net.InetAddress`类提供了IP地址和主机名的转换功能。例如,通过`InetAddress.getByName(String host)`方法可以将IP地址字符串(IPv4或IPv6)转换为`InetAddress`对象,而`InetAddress.getAddress()...

    java根据ip获取国家、地区名称,附带ip库

    总结,Java中根据IP获取国家和地区名称涉及IP库的使用、IP地址的转换、IP范围的查找以及可能的第三方库或API服务。具体实现方式取决于项目需求和资源限制。通过上述步骤和方法,你可以轻松地在Java程序中实现这一...

    java根据ip获取国家、地区名称,附带ip地址库

    `InetAddress`提供了`getByName()`方法,可以将字符串形式的IP地址转换为`InetAddress`对象,然后通过`getHostAddress()`方法获取IP地址,`getHostName()`方法则能获取主机名,但这些方法无法直接得到国家或地区的...

    Java进制转换实现

    在编程领域,进制转换是一项基础且重要的技能,尤其是在Java这样的多用途编程语言中。本文将深入探讨Java中如何进行进制转换,包括二进制、八进制、十进制和十六进制之间的转换。这对于任何对Java感兴趣或者正在学习...

    java判断是内网ip还是公网ip

    在Java编程中,判断一个IP地址是内网IP(私有IP)还是公网IP(全局IP)是一项常见的任务,尤其在网络编程和服务器配置中。内网IP通常用于局域网内部通信,而公网IP则是互联网上的唯一标识。下面将详细探讨如何实现这...

    Java实现的进制转换工具类完整示例

    Java实现的进制转换工具类完整示例 Java实现的进制转换工具类是...Java实现的进制转换工具类可以广泛应用于各种场景,如数据加密、颜色表示、IP地址表示等。在使用该工具类时,需要根据实际情况选择合适的方法和参数。

    java根据IP获取城市代码

    要将IP地址转换为城市代码,我们需要一个包含IP地址与地理位置对应关系的数据源。 一种常见的解决方案是使用IP数据库,如MaxMind的GeoLite库。这个库包含了全球的IP地址范围及其对应的城市、国家等信息。Java中可以...

    java读取纯真IP地址数据库

    在Java编程环境中,读取纯真IP地址数据库是一项常见的任务,尤其对于需要进行IP定位或者网络管理的应用来说。纯真IP数据库(通常称为QQWRY或IPSeeker)是一个包含了全球IP地址及其对应地理位置信息的数据库,它由一...

    使用Java代码将IP地址转换为int类型的方法

    // 使用位运算将int型IP转换为字符串 // ... (省略其他代码) // 然后进行字符串的反转和分段操作 // ... (省略其他代码) } ``` 虽然这个示例是C语言,但转换逻辑同样适用于Java。在Java中,可以创建一个...

    ip查询库java版(含IP地址库)

    总的来说,这个Java IP查询库为开发者提供了便捷的工具,使他们能够轻松地在应用程序中集成IP地址到地理位置的转换功能。无论是出于商业需求还是数据分析目的,它都是一个实用且高效的解决方案。

    跨平台 获取本机IP/MAC地址,检测是否内网IP,字符串IP转换成Number地址

    本文将深入探讨如何在不同的操作系统上获取本机的IP和MAC地址,以及如何判断一个IP地址是否为内网IP,并将字符串形式的IP地址转换为数值表示。我们将主要关注以下几个知识点: 1. **跨平台获取本机IP地址**: 跨...

    java实现根据ip地址获取地理位置的代码分享

    - **新浪接口**:`http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=IP地址`,返回JSON格式的数据,解析时更加方便,可以直接转换为Java对象。 - **淘宝接口**:`...

    java开发-IP解析方案-最新GeoIP2与IP2LOCATIO与dbIP离线数据库文件

    Java开发者可以使用IP2Location的Java SDK,通过简单的API调用来访问这些数据库,实现IP到地理位置的转换。IP2Location还提供了IP段归属、ISP信息等增值服务。 再者,dbIP是另一个开源的IP地理位置数据库,它提供了...

    java ip,身份证等接口查询所在地

    GeoIP2提供了API,可以将IP地址转换为国家、地区、城市等信息。以下是一个简单的示例: ```java import com.maxmind.geoip2.DatabaseReader; import com.maxmind.geoip2.exception.GeoIp2Exception; import ...

Global site tag (gtag.js) - Google Analytics