微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android json怎么使用方法

Json是轻量级的数据交换格式,常用于web应用程序之间的数据交换。在Android开发中,很多时候需要将数据以Json的形式从服务器获取并进行解析。下面是Json在Android中使用的方法

android json怎么使用方法

1.解析Json字符串

//Json字符串
String json = "{\"name\":\"小明\",\"age\":\"18\",\"gender\":\"男\"}";
//解析Json字符串
try {
    JSONObject jsonObj = new JSONObject(json);
    String name = jsonObj.getString("name");
    int age = jsonObj.getInt("age");
    String gender = jsonObj.getString("gender");
} catch (JSONException e) {
    e.printstacktrace();
}

2.解析Json数组

//Json数组
String jsonArray = "[{\"name\":\"小明\",\"gender\":\"男\"},{\"name\":\"小红\",\"age\":\"19\",\"gender\":\"女\"}]";
//解析Json数组
try {
    JSONArray jsonArr = new JSONArray(jsonArray);
    for (int i = 0; i < jsonArr.length(); i++) {
        JSONObject jsonObj = jsonArr.getJSONObject(i);
        String name = jsonObj.getString("name");
        int age = jsonObj.getInt("age");
        String gender = jsonObj.getString("gender");
    }
} catch (JSONException e) {
    e.printstacktrace();
}

3.使用Gson库解析Json数据

//Json字符串
String json = "{\"name\":\"小明\",\"gender\":\"男\"}";
//使用Gson库解析Json数据
Gson gson = new Gson();
User user = gson.fromJson(json,User.class);
//User类
public class User {
    private String name;
    private int age;
    private String gender;
    //getter和setter方法
    ...
}

4.生成Json数据

//生成Json对象
JSONObject jsonObj = new JSONObject();
try {
    jsonObj.put("name","小明");
    jsonObj.put("age",18);
    jsonObj.put("gender","男");
} catch (JSONException e) {
    e.printstacktrace();
}
//生成Json数组
JSONArray jsonArr = new JSONArray();
try {
    JSONObject jsonObj1 = new JSONObject();
    jsonObj1.put("name","小明");
    jsonObj1.put("age",18);
    jsonObj1.put("gender","男");
    jsonArr.put(jsonObj1);
    JSONObject jsonObj2 = new JSONObject();
    jsonObj2.put("name","小红");
    jsonObj2.put("age",19);
    jsonObj2.put("gender","女");
    jsonArr.put(jsonObj2);
} catch (JSONException e) {
    e.printstacktrace();
}

以上就是在Android中使用Json的方法,不同的情况下可以选择不同的方式来进行解析和生成Json数据。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐