java中JSON的解析
JSONArray jsonArray=JSONArrayfromObject(arrayStr);
//获得jsonArray的第一个元素
Object o=jsonArrayget(0);
可以使用三种方式,用json接收一个list,方法如下:
1、使用orgjsonJSONArray包:
1
2
3
4
5
6
7
JSONArray json = new JSONArray();
for(User u : list){
JSONObject jo = new JSONObject();
joput("id", ugetId());
joput("title", ugetName());
jsonput(jo);
}
2、使用netsfjson包下JSONArray的静态方法:fromObject(list), 这是网上大多是直接用此方法快捷转换JSON,但是对于list的要求就是其中的元素是字符串或对象,否则JSON不知道你想要的是什么数据:
1
JSONArray json = JSONArrayfromObject(list);
3、使用google的gson,将list转为json字符串:
import javatextParseException;
import orgjsonJSONArray;
import orgjsonJSONObject;
public class TestJsonArray {
public static void main(String[] args) throws ParseException {
String jsonStr = "[{\"a\":123, \"b\":\"hello\", \"x\":[{\"inner\":\"Inner JSONObject\"}]}]";
JSONArray jsonArray = new JSONArray(jsonStr);
JSONObject jsonObj = jsonArraygetJSONObject(0);
Systemoutprintln(jsonObj);
int a = jsonObjgetInt("a");
String b = jsonObjgetString("b");
JSONArray jsonArrayX = jsonObjgetJSONArray("x");
Systemoutprintln(a);
Systemoutprintln(b);
Systemoutprintln(jsonArrayX);
Systemoutprintln(jsonArrayXgetJSONObject(0)getString("inner"));
}
}
字符串主要用于编程,概念说明、函数解释、用法详述见正文,这里补充一点:字符串在存储上类似_址椤
所以它每一位的单个元素都是可以提取的,如s=“abcdefghij”,则s[0]=“a”,s[9]="j",而字符串的 零位正是它的长度,如s[0]=10(※上述功能Ansistring没有。),这可以给我们提供很多方便,如高精度运算时每一位都可以转化为数字存入 数组。
public static void jsonToBean(String data) {
try {
JSONArray array = new JSONArray(data);//将json字符串转成json数组
for (int i = 0; i < arraylength(); i++) {//循环json数组
JSONObject ob = (JSONObject) arrayget(i);//得到json对象
String name= obgetString("name");//name这里是列名称,获取json对象中列名为name的值
Systemoutprint(name);//输出name
} catch (JSONException e) {
}
}
以上就是关于java中[{"key":"value"}]怎么取值全部的内容,包括:java中[{"key":"value"}]怎么取值、java 获取json返回值中 list 中的数量,如何获取list中有多少条信息、java的JSONArray怎么用比如有一个JSONArray是 [{..."a":123, "等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)