Android JSON数据的读取和创建

预先准备好的一段JSON数据

{
"languages":[
{"id":1,"ide":"Eclipse","name":"Java"},
{"id":2,"ide":"XCode","name":"Swift"},
{"id":3,"ide":"Visual studio","name":"C#"}
],"cat":"it"
}

JSON数据的读取

        try {
InputStreamReader isr=new InputStreamReader(getAssets().open("text.json"),"UTF-8");
BufferedReader br=new BufferedReader(isr);
String line;
StringBuilder builder=new StringBuilder();
while ((line=br.readLine())!=null) {
builder.append(line);
}
br.close();
isr.close();
try {
JSONObject root=new JSONObject(builder.toString());
System.out.println("cat="+root.getString("cat"));
JSONArray array=root.getJSONArray("languages");
for (int i = 0; i < array.length(); i++) {
JSONObject lan=array.getJSONObject(i);
Log.i("id", lan.getInt("id")+"");
Log.i("id", lan.getString("name")+"");
Log.i("id", lan.getString("ide")+"");
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

输出:

Android JSON数据的读取和创建

JSON数据的创建

try {
JSONObject root=new JSONObject();
root.put("cat", "it");
JSONObject lan=new JSONObject();
lan.put("id", 1);
lan.put("ide", "eclipse");
lan.put("name", "java");
JSONObject lan1=new JSONObject();
lan1.put("id", 2);
lan1.put("ide", "XCode");
lan1.put("name", "swift");
JSONObject lan2=new JSONObject();
lan2.put("id", 3);
lan2.put("ide", "visual Studio");
lan2.put("name", "C#");
JSONArray array=new JSONArray();
array.put(lan);
array.put(lan1);
array.put(lan2);
root.put("languages", array); Log.i("JSON", root.toString()+"");
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

输出:

Android JSON数据的读取和创建

上一篇:脑波设备mindwaveTGC接口示例


下一篇:独家分享——大牛教你如何学习Web前端开发