JSON解析与生成 - Android
本篇文章记录的是Android应用中JSON的解析与生成.
读取JSON
try {
JSONObject json = new JSONObject("{\"key1\":\"value1\",\"list\":[{\"key2\":\"value2\",\"key3\":\"value3\"},{\"key2\":\"value2\",\"key3\":\"value3\"}]}");
String key1 = json.getString("key1");
JSONArray ar1 = json.getJSONArray("list");
for (int index = 0; index < ar1.length(); index++) {
JSONObject o1 = ar1.getJSONObject(index);
String K2 = o1.getString("key2");
String K3 = o1.getString("key3");
Log.e(TAG, String.format("%s-%s-%s", key1, K2, K3));
}
} catch (JSONException e) {
throw new RuntimeException(e);
}
上面的代码执行完毕之后,会得到诸如下面的执行结果:
生成JSON
JSONObject json = new JSONObject();
try {
json.put("key1", "value1");
JSONObject ch1 = new JSONObject();
ch1.put("key2", "value2");
ch1.put("key3", "value3");
JSONArray ar1 = new JSONArray();
ar1.put(ch1).put(ch1);
json.put("list", ar1);
Log.e(TAG, "onCreate: " + json);
} catch (JSONException e) {
throw new RuntimeException(e);
}
上面代码执行之后,会得到诸如下面的执行结果: