📜  Android JSON解析教程(1)

📅  最后修改于: 2023-12-03 15:13:20.401000             🧑  作者: Mango

Android JSON解析教程

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于Web应用中。在Android应用中使用JSON格式来传输数据非常方便,同时Android提供了多种JSON解析方式。

解析JSON
Gson解析

Gson是Google提供的一个轻量级的Java库,可将Java对象转换成JSON格式的字符串,也可以将JSON字符串转换成Java对象。以下是使用Gson解析JSON的步骤:

  1. 添加依赖

在module的build.gradle文件中加入以下代码:

dependencies {
    implementation 'com.google.code.gson:gson:2.8.6'
}
  1. 创建Java对象类

定义一个Java对象类,包含要解析JSON中的字段。

public class User {
    private String name;
    private int age;
    private String email;

    public String getName() { return name; }
    public int getAge() { return age; }
    public String getEmail() { return email; }
}
  1. 解析JSON

使用Gson的fromJson()方法解析JSON:

String json = "{\"name\":\"Tom\",\"age\":22,\"email\":\"tom@example.com\"}";
User user = new Gson().fromJson(json, User.class);
Org JSON解析

Org JSON是一个Java编写的JSON解析库,支持数据解析、数据输出和数据修改。以下是使用Org JSON解析JSON的步骤:

  1. 添加依赖

在module的build.gradle文件中加入以下代码:

dependencies {
    implementation 'org.json:json:20210307'
}
  1. 解析JSON

使用JSONObject类解析JSON:

String json = "{\"name\":\"Tom\",\"age\":22,\"email\":\"tom@example.com\"}";
try {
    JSONObject jsonObject = new JSONObject(json);
    String name = jsonObject.getString("name");
    int age = jsonObject.getInt("age");
    String email = jsonObject.getString("email");
} catch (JSONException e) {
    e.printStackTrace();
}
构建JSON
Gson构建

Gson同样可以用来构建JSON格式的字符串,以下是使用Gson构建JSON字符串的步骤:

  1. 添加依赖

在module的build.gradle文件中加入以下代码:

dependencies {
    implementation 'com.google.code.gson:gson:2.8.6'
}
  1. 构建JSON

使用Gson的toJson()方法构建JSON:

User user = new User();
user.setName("Tom");
user.setAge(22);
user.setEmail("tom@example.com");
String json = new Gson().toJson(user);
Org JSON构建

Org JSON同样可以用来构建JSON格式的字符串,以下是使用Org JSON构建JSON字符串的步骤:

  1. 添加依赖

在module的build.gradle文件中加入以下代码:

dependencies {
    implementation 'org.json:json:20210307'
}
  1. 构建JSON

使用JSONObject类构建JSON:

JSONObject jsonObject = new JSONObject();
try {
    jsonObject.put("name", "Tom");
    jsonObject.put("age", 22);
    jsonObject.put("email", "tom@example.com");
} catch (JSONException e) {
    e.printStackTrace();
}
String json = jsonObject.toString();
总结

这篇文章介绍了两种解析JSON和构建JSON的方式,分别是Gson和Org JSON。在实际开发中,根据需要选择使用哪种方式较为合适。