1. 程式人生 > >特殊符號引起的JSON轉換異常

特殊符號引起的JSON轉換異常

json格式如下

{"result":{"content":[{"createTime":1535212794000,"id":"8a5406e465713888016571d031e70000","resoucePoolId":"5e11323124e0444c90f2e42de05cd444","state":"available","usersasid":"6fb93a1ddf1b43b095067e0197614b05","vlanid":"6"},{"createTime":1535193428000,"id":"8a5406e46570a123016570a2dd1e0000","networkid":"33333333333333","resoucePoolId":"24","state":"available","usersasid":"6fb93a1ddf1b43b095067e0197614b05","vlanid":"3"}],"first":true,"last":true,"number":0,"numberOfElements":2,"pageable":{"offset":0,"pageNumber":0,"pageSize":10,"paged":true,"sort":{"sorted":true,"unsorted":false},"unpaged":false},"size":10,"sort":{"$ref":"$.result.pageable.sort"},"totalElements":2,"totalPages":1},"message":"ok","status":200}

反覆看了好遍,是符合json格式的,但用

JSONObject jsonObject1=JSONObject.parseObject(result);的時候卻報空值異常了

java.lang.NullPointerException
    at com.alibaba.fastjson.JSON.handleResovleTask(JSON.java:237)
    at com.alibaba.fastjson.JSON.parse(JSON.java:91)
    at com.alibaba.fastjson.JSON.parse(JSON.java:80)
    at com.alibaba.fastjson.JSON.parseObject(JSON.java:151)
    at com.skyform.teraproc.cloudlogic.tenant.service.impl.TenantServiceImpl.listTenantVlans(TenantServiceImpl.java:1723)

與之前的對比,發現有個特殊符號$,試著用

result=result.replace("$","s");
JSONObject jsonObject1=JSONObject.parseObject(result);

發現就可以了。