JSON是一种轻量级数据交换格式,它使用对象和数组这两种结构来表示数据。对象用于表示键值对,而数组用于表示有序的值列表。因此,JSON的数据格式实际上是对象和数组的复合结构。这种简单而灵活的格式使得JSON成为了广泛应用于数据交互和存储的选择。
你的示例JSON数据是名/值对,其中只有一个"wegInstLt"的变量名,值是包含一个条目的数组。假设var info={"wegInstLt":[{"billTypeCode":"0","channelId":530,"channelKind":"03","isHaveBillDate":"0","isHavePayAmount":"0","isLeePay":"0","isPrePay":"1","wiliCode":"1238","wiliItem":"00","wiliName":"哈尔滨市自来水公司","wltiId":10345}]}; 要获得"哈尔滨市自来水公司"可以这样写:
info.wegInstLt[0].wiliName
希望可以帮到你,祝你生活愉快!
org.json.JSONObject
你可以使用这个包来实现你的需求。在网上搜索这个包,它包含了一些方法,可以将一个JSON字符串转换为JSONObject对象,也可以反向操作。你可以查看它的API文档来了解具体细节。
不如你的这个字符串就可以这么实现
public static void main(String[] args) throws JSONException {
String sJson = "[{'gwcxxid':'1','spsl':'2'},{'gwcxxid':'1','spsl':'2'},{'gwcxxid':'3','spsl':'4'}]";
JSONArray jsonArray = new JSONArray(sJson);
int iSize = jsonArray.length();
System.out.println("Size:" + iSize);
for (int i = 0; i
JSONObject jsonObj = jsonArray.getJSONObject(i);
System.out.println("[" + i + "]gwcxxid=" + jsonObj.get("gwcxxid"));
System.out.println("[" + i + "]spsl=" + jsonObj.get("spsl"));
System.out.println();
}
}
使用原生的解析:
String json = "...";
//遍历数组里的值,得到每个独立的对象,然后获取对应的值设置到声明好的对象中,最终创建对象完成后添加到集合中,如我自己代码里的片段:
for (int j = 0; j
obj = array.getJSONObject(j);
Data data = new Data();
mDataList.add(data);
}
数组声明
在数组的声明格式里,“数据类型”是声明数组元素的数据类型,可以是java语言中任意的数据类型,包括简单类型和结构类型。“数组名”是用来统一这些相同数据类型的名称,其命名规则和变量的命名规则相同。
数组声明之后,接下来便是要分配数组所需要的内存,这时必须用运算符new,其中“个数”是告诉编译器,所声明的数组要存放多少个元素,所以new运算符是通知编译器根据括号里的个数,在内存中分配一块空间供该数组使用。利用new运算符为数组元素分配内存空间的方式称为动态分配方式。
以上内容参考:百科-数组
以上是了解JSON数据格式的基本结构的详细内容。更多信息请关注PHP中文网其他相关文章!