首先准备一个Json格式的文件text.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 {
InputStream is = this.getAssets().open("test.json");
BufferedReader bufr = new BufferedReader(new InputStreamReader(is, "UTF-8"));
String line ;
StringBuilder builder = new StringBuilder();
while((line = bufr.readLine()) != null){
builder.append(line);
}
is.close();
bufr.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);
System.out.println("-----------------------");
System.out.println("id="+lan.getInt("id"));
System.out.println("ide="+lan.getString("ide"));
System.out.println("name="+lan.getString("name"));
}
} catch (JSONException e) {
e.printStackTrace();
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
//Json数据的创建
try {
JSONObject root = new JSONObject();
root.put("cat", "it");
JSONObject lan1 = new JSONObject();
lan1.put("id", 1);
lan1.put("ide", "Eclipse");
lan1.put("name", "Java");
JSONObject lan2 = new JSONObject();
lan2.put("id", 2);
lan2.put("ide", "XCode");
lan2.put("name", "Swift");
JSONObject lan3 = new JSONObject();
lan3.put("id", 3);
lan3.put("ide", "Visual Studio");
lan3.put("name", "C#");
JSONArray array = new JSONArray();
array.put(lan1);
array.put(lan2);
array.put(lan3);
root.put("languages", array);
System.out.println(root.toString());
} catch (JSONException e) {
e.printStackTrace();
}