【问题标题】:InetAddress get IP inconsistencyInetAddress 获取 IP 不一致
【发布时间】:2014-03-30 01:33:09
【问题描述】:

我正在尝试浏览 URL 列表并获取他们的 IP,但我注意到有时它会挂在一个网站上并且永远不会继续,有时它会跳过一堆网站。有人知道这是什么原因吗?

for (String site : sites) {

    try {
        address = InetAddress.getByName(new URL(site).getHost()).getHostAddress();
    } catch (Exception e) {
        System.out.println(e);
    }

    IPList.put(address, site);
    publish(site);

}

编辑:我已将问题缩小到发布方法。似乎它在有机会发布所有内容之前完成了 for 循环,然后它就停止了......

EDIT2:想通了,我的小错误。谢谢。

【问题讨论】:

标签: java timeout ip ip-address inetaddress


【解决方案1】:

试试这个:

private ArrayList<String> ips = new ArrayList<String>();

for (String site : sites) {
try {
    address = InetAddress.getByName(new URL(site).getHost());
} catch (Exception e) {
    System.out.println(e);
}
String ip = address.getHostAddress();
ips.add(ip);

}

【讨论】:

  • 编辑:它工作了一次,但当我再次运行它时,我遇到了同样的问题。
  • 你的意思是第一次运行它就可以了,当你再次运行它时,你遇到了同样的问题?
  • 是的,但我想通了,这是我的处理方法中的一个问题。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多