java - 如何访问 JSON 元素(数组)

标签 java json gson

我的项目中有GSON库,我需要ext_id。我可以使用 JSON.get("images") 访问“图像”,但是我无法进入图像数组。有人可以帮我解决这个问题吗?

{
    "images": [{
    "attributes": {},
    "ext_id": "467152316",
    "flag_count": 0,
    "height": 2064,
    "id": "da2d2307b6b72afcfbd6eab8287fad49fce442d6",
    "platform": "Web",
    "state_name": "public",
    "type_name": "ypid",
    "user_id": 7297580,
    "user_type": "obile",
    "width": 1161,
    "verified": 1,
    "blob_media_type": "image",
    "created_at": "2016-08-19 19:29:13 +0000",
    "deleted": 0,
    "end_date": "2216-07-02 19:29:13 +0000",
    "primary": 0,
    "recurring": 0,
    "start_date": "2016-08-19 19:29:13 +0000",
    "state": 0,
    "tags": [],
    "type_id": 1,
    "updated_at": "2016-08-19 19:29:13 +0000",
    "user": "Fanta C.",
    "business": {
        "name": "Porto's Bakery",
        "ypid": "467152316",
        "listing_id": "467152316",
        "primary_collection": "food",
        "heading_code": "8004219",
        "mip_url": "/glendale-ca/mip/portos-bakery-467152316",
        "phone_number": "(818) 956-5996",
        "address": "315 N Brand Blvd",
        "heading_text": "Dessert Restaurants",
        "city": "Glendale",
        "state": "CA",
        "zip": "91203",
        "is_paid": false,
        "tier": 999,
        "source": "MDM",
        "rating_attributes": [{
            "name": "Atmosphere",
            "id": 1031
        }, {
            "name": "Food",
            "id": 1023
        }, {
            "name": "Service",
            "id": 1038
        }]
    }
}],
"count": 1

}

最佳答案

你可以试试这个。

public void parse(String jsonString) {
    JsonElement jelement = new JsonParser().parse(jsonString);
    JsonObject jobject = jelement.getAsJsonObject();
    JsonArray jarray = jobject.getAsJsonArray("images");
    for(int i=0;i<jarray.size();i++){
        JsonObject jsonObject = jarray.get(i).getAsJsonObject();
        String result = jsonObject.get("ext_id").toString();
        System.out.println(result);
        result = jsonObject.get("height").toString();
        System.out.println(result);
    }
}

您还可以查看here

关于java - 如何访问 JSON 元素(数组),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39046836/

相关文章:

java - 如何找到将启动给定文件的程序的名称?

java - 将 RDD 转换为键值对 RDD,值位于 List 中

java - 在 Java 中转换 MySQL 日期格式

json - 在 Spark DataFrame 中布局 TimeSeries 数据的最佳方式 - Scala

JavaScript - JSON数据结构的构建 - 如何使用变量值更改键名

java - 有java异步跟踪框架吗?

javascript - Three.js - 在运行时更改 JSON Material

java - 如何在反序列化方法中从json对象获取字符串数组

android - 使用 GSON 进行 JSON 反序列化

android - 使用 Gson 和 Volley 删除多余的括号