1

我有以下 JSON 字符串 -

"abc":["17.14.4.0/14"]
"def":["12.24.82.0/14","17.15.146.38"]

我有以下方法显示 abc、def 中的所有 IP,以及我的 JSON 字符串中包含的每个字符串(接近 100 个)。

private static List<String> listOfAllIPs = new ArrayList<String>();
public static List<String> getListOfIps(String networkID)
{           
    SubnetUtils utils = new SubnetUtils(networkID);
    String[] ipArr = utils.getInfo().getAllAddresses();
    List<String> ipList = Arrays.asList(ipArr);     
    return ipList;
}
for(String networkIP:IPList) //IP list is the list of all the IPs - I have pasted sample IP list below
    {       
    listOfAllIPs.addAll(getListOfIps(networkIP));           
    }

IP List -
17.24.84.0/24
17.24.80.0/24
63.92.240.160/28
12.43.176.137/28
17.24.86.0/25
17.24.92.0/24

我不能在这里粘贴我的整个代码。这是我遇到的问题。当必须获取 abc 的 IP 时,我的方法非常有效。但是对于字符串def,它会引发以下错误-

Exception in thread "main" java.lang.IllegalArgumentException: Could not parse [12.24.82.0/14]
at org.apache.commons.net.util.SubnetUtils.calculate(SubnetUtils.java:217)
at org.apache.commons.net.util.SubnetUtils.<init>(SubnetUtils.java:52)

我和我的队友一直在努力想办法解决这个问题。任何帮助都感激不尽。

4

0 回答 0