java.lang.NumberFormatException: multiple points特例及解决!

java.lang.NumberFormatException: multiple points


大多数情况否是网上说得那样,是因为多线程的关系,但是我遇到的情况却是特例,是在SnmpGet的返回值处理时,报的异常;


代码如下:


List集合中放的是,下面的oid = value ,是属于VariableBinding类型的;

.1.3.6.1.4.1.2021.9.1.8.1 = 16613536

.1.3.6.1.4.1.2021.9.1.6.1 = 879039388


for (int i = 0;i<list.size();i++) {
                    mylog("----list.get(i)"+list.get(i));
                    str = Double.toString(Double.parseDouble(list.get(0)) / Double.parseDouble(list.get(1)) * 100);
                }


虽然做了.toString();处理,但是“.1.3.6.1.4.1.2021.9.1.6.1 = 879039388”的字符串,是无法进行Double.parseDouble();转换的,故会报错:

java.lang.NumberFormatException: multiple points


snmp请求中可以将VariableBinding类型的数据,先转换为String类型数据,如:


VariableBinding vb1 = response.get(1);
            list.add(vb1.getVariable().toString());


然后再进行for循环遍历的时候,就不会出现 multiple points 的错误了。


  

posted @ 2022-01-27 18:36  zhangdaopin  阅读(1195)  评论(0编辑  收藏  举报