加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Java中的INET_NTOA和INET_ATON?

发布时间:2020-12-14 05:59:26 所属栏目:Java 来源:网络整理
导读:我使用 Java(使用Spring框架)并希望在IPv4地址的数字表示(例如2130706433)和它们的文本对应物(例如127.0.0.1)之间进行转换.通常,这样做的方法是用编程语言提供的(它们通常分别称为INET_NTOA和INET_ATON)但我在Java中找不到它. 有谁知道他们叫什么或如何实现
我使用 Java(使用Spring框架)并希望在IPv4地址的数字表示(例如2130706433)和它们的文本对应物(例如127.0.0.1)之间进行转换.通常,这样做的方法是用编程语言提供的(它们通常分别称为INET_NTOA和INET_ATON)但我在Java中找不到它.

有谁知道他们叫什么或如何实现它们?

解决方法

在javadocs中查看 InetAddress.标准API不直接支持这些函数,但您可以使用此类提取这两个表示.
一个小例子:
InetAddress address = InetAddress.getLocalHost();
    byte[] byteAddress = address.getAddress();
    System.out.println(Arrays.toString(byteAddress));
    System.out.println(address.getHostAddress());

(请记住,字节已签名.)

如果你有长期比你可以使用ByteBuffer,快速和舒适的转换.方法:putLong()然后是array().

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读