json数组
背景:前段时间出差处理一个客户的需求,其中有一项需要用到JSON处理。需求中的http请求参数关于设备信息(subDeviceData)要求传空数组。
json如下:
不符合要求json:{"ip":"10.10.15.130","mac":"08:A5:C8:00:00:16","refreshState":"0","refreshTime":"20181113115632","sn":"0010611611021100000008A5C8000016","subDeviceData":"","version":"005.440.058"}
符合要求json:{"ip":"10.10.15.130","mac":"08:A5:C8:00:00:16","refreshState":"0","refreshTime":"20181113115632","sn":"0010611611021100000008A5C8000016","subDeviceData":[],"version":"005.440.058"}
导致原因:
(1)一开始的时候使用的org架包的json进行分装
mDeviceInfo.setSubDeviceData(Collections.empty_LIST);
org.json.jsonobject jsonObject = new JSONObject();
jsonObject.put(name, value);
尽管我已经将subDeviceData设置为空数组了,但是分装后得到的还是一个空的字符串,这应该和org里面的封装有关系。
(2)后面经同事介绍采用Google自带的json处理即可
com.google.gson.Gson gson = new Gson();
tempValue = gson.toJson(mDeviceInfo);
其中DeviceInfo为实体类,将所有的信息设置到实体类后,然后通过toJson函数进行json转换,发现最终得到了空数组。
相关阅读
文章转自: http://www.cnblogs.com/lxshanye/archive/2013/05/20/3088558.html 版权归原作者。 1.变长一维数组 这里说的变长
一、JSON 语法规则: JSON 是存储和交换文本信息的语法 在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML、JSON等, JSON
int[] num = { 1,2,3,4,5,6,7}; int [] num1=new int[10]; num1[2] = 9; int[]
1.数组的方法concat():concat();方法为赋值并新增,返回一个新数组,只适合无嵌套的数组,concat();会将数组最外层的中括号去掉,然后对
【书山有路勤为径,学海无涯苦作舟】 一、生成数组