1 读取json文件
AssetManager assetManager = getAssets();
InputStreamReader inputStreamReader = new InputStreamReader(assetManager.open("person.json"),"UTF-8");
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String line;
StringBuilder builder = new StringBuilder();
while ((line = bufferedReader.readLine()) != null) {
builder.append(line);}
bufferedReader.close();
inputStreamReader.close();
String jsonStr = builder.toString();
2 Android自带的JSONArray
List<Person> persons = new ArrayList<>();
JSONArray jsonArray =new JSONArray(jsonStr);
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = (JSONObject) jsonArray.get(i);
Person person = new Person();
person.setId(i + "");
person.setName(jsonObject.getString("name"));
person.setAge(jsonObject.getString("age"));
persons.add(person);
}
Log.e("TAG", "parseEasyJson: " + persons.toString());
Toast.makeText(this, persons.toString(), Toast.LENGTH_SHORT).show();
3 google提供的Gson(代码更少)
3.1 引入依赖
implementation group: 'com.google.code.gson', name: 'gson', version: '2.8.5'
3.2 使用
Gson gson =new Gson();
Type type =new TypeToken<List<Person>>(){}.getType();
List<Person> person2 = gson.fromJson(jsonStr,type);