小编Loh*_*ith的帖子

Inet6Address对无效的IPv6地址有效

java.net.Inet6Address用来验证输入字符串是否是有效的IPv6地址.

这是我的代码片段:

public static boolean isValidIPv6ddress(String address) {
    if (address.isEmpty()) {
        return false;
    }
    try {
        Object res = InetAddress.getByName(address);
        return res instanceof Inet6Address;
    } catch (final UnknownHostException ex) {
        return false;
    }
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,true即使对于以下无效的输入,上述方法也会返回:

System.out.println(isValidIPv6ddress("2A00:17C8:50C:0000:0000:0000:0000:00001"));
System.out.println(isValidIPv6ddress("2A00:17C8:50C:0000:0000:00000000000000:0000:00001"));
System.out.println(isValidIPv6ddress("2A00:17C8:50C:00001235:0000:00000000000000:0000:00001"));
Run Code Online (Sandbox Code Playgroud)

API 会忽略前导零吗?或者API中是否存在错误

java ipv6

1
推荐指数
1
解决办法
765
查看次数

标签 统计

ipv6 ×1

java ×1