93

可能重复:
有没有一种简单的方法可以在 Java 中将 String 转换为 Inetaddress?

我正在尝试将字符串(表示 IP 地址,例如10.0.2.50)转换为InetAddressobj。

根据 API,可以创建一个提供表示主机名(例如www.google.ch)的字符串的对象。这对我来说不是一个选项,因为我没有要创建的每个 InetAddress 对象的主机名(除了它花费的时间太长)。

是否可以将字符串(例如10.0.2.50)转换为InetAddressobj。?(根据 api,如果您的 IP 为 ,则可以这样做byte[],但是如何将String包含 IP 的 IP 转换为byte[]?)

4

2 回答 2

178

只需调用InetAddress.getByName(String host)传入您的文本 IP 地址即可。

来自 javadoc:主机名可以是机器名,例如“java.sun.com”,也可以是其 IP 地址的文本表示。

网络地址 javadoc

于 2011-04-06T19:21:47.107 回答
19

从以下文档InetAddress.getByName(String host)

主机名可以是机器名,例如“java.sun.com”,也可以是其 IP 地址的文本表示。如果提供了文字 IP 地址,则仅检查地址格式的有效性。

所以你可以使用它。

于 2011-04-06T19:22:16.887 回答