2

我制作的代码会自动返回主机名。

但不是每次都返回我机器的主机名。我也想在其他机器上进行检查(出于测试目的)。

我的意思是,每次我调用该方法时,它都会要求我输入一个 IP 地址,然后将我输入的地址的主机名返回给我。

例如:

  1. 运行方法 findH(String f)
  2. 我为字符串 f 输入 127.0.0.1(IP 地址/主机名)
  3. 它返回我的主机名:MyPC 等(编造)。

这是我的代码:

import java.net.InetAddress;

public class Search
{


    public String findH(String x) throws Exception {
        InetAddress a = InetAddress.getLocalHost();
        String s = a.getHostName();
        System.out.println("Host Name is: " + a.HostName());

        return x;
    }
}

提前致谢。我知道我的描述不是最好的,但如果有任何歧义,请告诉我。

4

2 回答 2

2

尝试

public String findH(String x) throws Exception {
    InetAddress addr = InetAddress.getByName(x);
    return addr.getHostName();
}
于 2013-03-06T14:59:33.620 回答
0

而不是打电话给InetAddress.getLocalHost()你想从创建地址x

InetAddress a = InetAddress.getByName(x);

您的其余代码将保持不变..

哦,你可能不想a.getHostName()回来x

于 2013-03-06T14:58:13.120 回答