【发布时间】:2014-07-02 08:06:58
【问题描述】:
我尝试使用 FTPClient 类进行连接。这段代码完美运行:
client.connect("172.20.5.131");
但是当 ip 地址看起来像 -1406991772 时,我无法连接。我怎样才能做到这一点?
非常感谢!
【问题讨论】:
我尝试使用 FTPClient 类进行连接。这段代码完美运行:
client.connect("172.20.5.131");
但是当 ip 地址看起来像 -1406991772 时,我无法连接。我怎样才能做到这一点?
非常感谢!
【问题讨论】:
为此,首先您必须使用 InetAddress#getByAddress(byte[]) 将 IP-Address 的整数值转换为有效的 IP-Address:
int ipAddress = -1406991772;
byte[] bytes = BigInteger.valueOf(ipAddress).toByteArray();
String address = InetAddress.getByAddress(bytes).getHostAddress();
然后将address 传递给client.connect(address);
【讨论】:
ipAddress 不是整数,它是字符串。如何转换它?
Integer.parseInt(ip_address)