文章·资料 电脑软件 手机应用 网站源码




    本 站 搜 索
   推 荐 文 章        More...
华硕易电脑(ASUS Eee PC 1025C..
先来段开场白:为了外出携带方便,到淘..
Acronis True Image 使用说明
  一款可以在Windows下使用全部功..
Norton Ghost 使用详解
一、分区备份   使用Ghost进行系..
    文 章 阅 读 排 行
手机视频监控 APP 关闭广告:萤..
一、萤石云视频:我的,设置,隐私设置,..
常见数据库介绍与对比(SQL Serv..
常见数据库的对比分析,涵盖你提到的 A..
Windows 系统修改默认文件类型..
Windows 系统文件类型图标,通常由默..
Windows 系统安装或备份时 ISO,..
【ISO 文件】 ISO 文件其实就是光..
Microsoft SQL Server 2000 Per..
  对于第一次安装 Microsoft SQL Se..
颜色与英文单词对照
颜色与英文单词对照 red green bl..
PakePlus 构建 APP 需要 Github..
PakePlus 是一个基于 Rust Tauri 的..
主页真的越Google、越简洁越好吗
  如果你在11月10日早上打开雅虎中..
网络工程师必懂的专业术语
路由器问题:1、什么时候使用多路由协..
为啥现在的电脑都不能安装 Wind..
说实话,这几年如果你尝试在新电脑..
 文 章 信 息
IP地址转换成10进制整数
评论()〗〖留言〗〖收藏
〖文章分类:电脑·手机·网络 / 网络安全·设置〗〖阅读选项
一、由域名求IP地址的程序

下面程序由命令行输入域名,输出ip

import java.net.*;
public class nslookup { 
//Usage:java nslookup hostname 
public static void main (String argv[]) throws Exception { 
String host=argv[0]; 
InetAddress address=null; 
try { 
  address=InetAddress.getByName(host); 
} catch(UnknownHostException e) { 
  System.out.println("Unknown host"); 
  System.exit(0); 

byte[] ip=address.getAddress(); 
for (int i=0;i< ip.length;i++) { 
    if (i>0) System.out.print("."); 
    System.out.print(ip&0xff); 

  System.out.println(); 
}


程序运行结果:

C:\java>java nslookup sina.com
71.5.7.138

C:\java>

二、 得到某个域名的所有IP地址

import java.net.*;
import java.io.*;

public class SimpleDNS
{
  public static void main(String[] args)
  {
    try
    {
      InetAddress[] address =InetAddress.getAllByName("www.sina.com");
  for(int i=0;i< address.length;i++)
  {   
  System.out.println(address.getHostAddress());
  }       
    }
    catch (Exception e)
    {
        System.out.println(e.toString());
        System.exit(1);
    }
  }
}


? 运行结果:
C:\java>java SimpleDNS www.s
218.30.13.35
218.30.13.36
218.30.13.37
218.30.13.38
218.30.13.39
218.30.13.40
218.30.13.41
218.30.13.42
218.30.13.43
218.30.13.44
218.30.13.45
218.30.13.46
218.30.13.47
218.30.13.48
218.30.13.49
218.30.13.34 

三、 IP地址转换成10进制整数 
经常要判断一个ip是国内的还是国外的,有了下面程序再结合数据库查询...

/**
@描述:java中实现IP地址的各种表现形式之间的转换
@作者:慈勤强
@Email : cqq1978@gmail.com http://blog.csdn.net/cqq
*/ 


class IP 
{
  private static long ipToLong(String strIP)
  //将127.0.0.1 形式的IP地址转换成10进制整数,这里没有进行任何错误处理
  {
      int j=0;
      int i=0;
      long [] ip=new long[4];
      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]; 
  }

  private static String longToIP(long longIP)
  //将10进制整数形式转换成127.0.0.1形式的IP地址
  {
      StringBuffer sb=new StringBuffer("");
      sb.append(String.valueOf(longIP>>>24));//直接右移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));
      sb.append(".");
      return sb.toString(); 
  } 

  public static void main(String[] args) 
  {
      System.out.println("IP地址的各种表现形式:\r\n");
      System.out.print("32位二进制形式:");
      System.out.println(Long.toBinaryString(3526601384L));
      System.out.print("十进制形式:");
      System.out.println(ipToLong("210.51.170.168"));
      System.out.print("普通形式:");
      System.out.println(longToIP(3526601384L));
  }
}

程序运行结果:

IP地址的各种表现形式: 

32位二进制形式:11001010011100000110000010100011 
十进制形式:3396362403 
普通形式:202.112.96.163.

文章作者:未知  更新日期:2006-08-08
〖文章浏览:〗〖发送文章〗〖打印文章
相关文章 ·命令行下修改IP地址2005-12-10
·Ghost 以后自动修改 机器名 IP地址的批处理文件2005-12-02
·IP地址常识2006-05-08
·特殊的IP地址2006-03-21
·全球IP地址段2005-10-09
·IP地址与MAC地址的区别2005-11-30
相关软件 ·IP 地址修改器 V5.0(快速配置/切换IP地址)2023-09-22
·IP地址一键修改(切换)工具 V1.12023-09-22
·多网段IP配置工具 V1.1(IP地址配置/扫描)2023-09-01
·Visual Basic:一个可以利用Windows API获得机器IP地址的程序 2005-07-09
·IP地址切换器 V5.52006-08-10
·网吧IP/CS/电脑名修改工具(Yss58.com)2009-06-15