标签:imei 复杂 blog 第一个 开始 strong csdn http 就会
这是一个json格式的字符串
第一种情况(简单格式)
String result = "{\"name\":\"小明\",\"age\":\"12\"}";
JSONObject json = new JSONObject(result);
System.out.println("name="+json.getString("name")+",age="+json.getString("age"));
运行输出结果
name=小明,age=12
第二种情况(带数组)
String result = "{\"name\":\"小明\",\"age\":\"12\",\"family\":[{\"baba\":\"大明\"},{\"mama\":\"小明的妈妈\"},{\"meimei\":\"小明的妹妹\"}]}";
JSONObject jsonobject = new JSONObject(result);
for(int i=0;i<jsonobject.getJSONArray("family").length();i++){
String family = jsonobject.getJSONArray("family").get(i).toString();
JSONObject jsonfamily = new JSONObject(family);
System.out.println(jsonfamily);
}
运行输出结果
{"baba":"大明"}
{"mama":"小明的妈妈"}
{"meimei":"小明的妹妹"}
json解析就是这些了,如果复杂的话也就是一层一层获取。
需要组装的格式
{
"status": [
{
"title": "标题",
"contents": [
{
"content": "内容"
},
{
"content": "内容2"
}
],
"status": "状态"
}
],
"nodetow": "第二个",
"nodeone": "第一个"
}
开始组装
JSONObject Msg = new JSONObject();
Msg.put("nodeone", "第一个");
Msg.put("nodetow", "第二个");
JSONArray status = new JSONArray();
JSONObject In = new JSONObject();
In.put("status", "状态");
In.put("title", "标题");
JSONArray contents = new JSONArray();
JSONObject content = new JSONObject();
content.put("content", "内容");
JSONObject content2 = new JSONObject();
content2.put("content", "内容2");
contents.put(content);
contents.put(content2);
status.put(In);
In.put("contents", contents);
Msg.put("status", status);
System.out.println(Msg);
测试组装成功。
在使用JSONObject的时候,使用getString()获取值,发现报错了,异常是返回的类型不是一个字符串。后来发现方法用错了,在这里记录一下。并分别说一下它们的区别。
get()根据键获取一个对象,就是说,如果使用这个方法,你获取到的就是一个对象,既然是对象,那么获取到的就有可能是任意类型。
getString()返回一个字符串的值,你得确认你获取的值是一个字符串,才使用这个方法,不然就会抛异常了。
转载:https://blog.csdn.net/woshimeihuo/article/details/50509191
标签:imei 复杂 blog 第一个 开始 strong csdn http 就会
原文地址:https://www.cnblogs.com/ynyhl/p/9540763.html