阅读量:0
Android提供了多种方法来解析JSON数据,以下是常见的两种方法:
使用JSONObject和JSONArray类:
- 首先将JSON字符串转换为JSONObject对象,例如:
String jsonString = "{'name':'John', 'age':30, 'city':'New York'}"; JSONObject jsonObject = new JSONObject(jsonString);
- 然后可以通过键来获取对应的值,例如:
String name = jsonObject.getString("name"); int age = jsonObject.getInt("age"); String city = jsonObject.getString("city");
- 如果JSON字符串中包含数组,可以使用JSONArray类来解析,例如:
String jsonString = "{'students': [{'name':'John', 'age':20}, {'name':'Kate', 'age':22}]}"; JSONObject jsonObject = new JSONObject(jsonString); JSONArray studentsArray = jsonObject.getJSONArray("students"); for (int i = 0; i < studentsArray.length(); i++) { JSONObject studentObject = studentsArray.getJSONObject(i); String name = studentObject.getString("name"); int age = studentObject.getInt("age"); // 处理每个学生的数据 }
- 首先将JSON字符串转换为JSONObject对象,例如:
使用Gson库:
- 首先要在build.gradle文件中添加Gson库的依赖:
implementation 'com.google.code.gson:gson:2.8.6'
- 然后可以使用Gson库来将JSON字符串转换为Java对象,例如:
String jsonString = "{'name':'John', 'age':30, 'city':'New York'}"; Gson gson = new Gson(); MyClass obj = gson.fromJson(jsonString, MyClass.class);
- MyClass是一个自定义的类,它的字段需要与JSON字符串中的键对应,例如:
public class MyClass { private String name; private int age; private String city; // 省略构造方法和getter/setter方法 }
- 首先要在build.gradle文件中添加Gson库的依赖:
以上是两种常见的JSON解析方法,根据实际情况选择适合的方法进行解析。