解析JSON格式

两种方法:
第一种官方提供的JSONObject,也可以使用谷歌开源库GSON
JSONObject

private void parseJSONWithJSONObject(String jsonData){
    try {
        //将服务器返回的数据传入到一个JSONArray中
        JSONArray jsonArray = new JSONArray(jsonData);
        //遍历jsonArray,从中取出的每一个元素都是JSONObject对象,包含了id/name/version这些数据
        for (int i = 0; i < jsonArray.length(); i++) {
            JSONObject jsonObject = jsonArray.getJSONObject(i);
            String id = jsonObject.getString("id");
            String name = jsonObject.getString("name");
            String version = jsonObject.getString("version");
        }
    } catch (JSONException e) {
        e.printStackTrace();
    }
}

GSON
主要就是可以将一段JSON格式的字符串自动映射成一个对象,从而我们不用手动去编写代码去进行解析了。
使用–>添加依赖:

compile 'com.google.code.gson:gson:2.7'
Gson gson = new Gson();
Person person = gson.fromJson(jsonData,Persion.class);

将json数据自动解析成为了一个Persion对象了。

如果是解析一段Json数组会稍微麻烦点,我们需要借助TypeToken将期望解析成的数据类型传入到fromJson()方法中

List<Person> people = gson.fromJson(jsonData , new TypeToken<List<Person>>(){}.getType());

猜你喜欢

转载自blog.csdn.net/m0_37705108/article/details/84112706