簡體   English   中英

使用Gson解析無鍵JSONArray內的JSONArray

[英]Parsing a JSONArray inside a keyless JSONArray using Gson

我最近才剛開始進行android開發,並且想出了一個看起來像這樣的json,

"rows": [

    [ 
        { "val": "abc", 
          "val1":"cde" 
        },

        { "val": "efg", 
          "val1":"hij" 
        },
    ],

    [ 
        { "val": "klm", 
          "val1":"nop" 
        },

        { "val": "qrs", 
          "val1":"tuv" 
        },
    ],
    ........
    ........
    ........
]

現在您可以看到外部數組沒有鍵,而內部數組有。 我正在使用Gson解析json。 我應該如何為這個json創建模型類? 任何幫助,將不勝感激!!

首先,此JSON字符串看起來無效。 每個包含兩個元素的內部數組的第二個元素后不應有逗號。 並將整個內容包裝在{}中。 像這樣:

{"rows": [
    [ 
        { "val": "abc", 
          "val1":"cde" 
        },
        { "val": "efg", 
          "val1":"hij" 
        }
    ],
    [ 
        { "val": "klm", 
          "val1":"nop" 
        },
        { "val": "qrs", 
          "val1":"tuv" 
        }
    ]
]}

如果您更正了這些問題,則可以使用GSON進行解析,如下所示:

    JsonElement root = new JsonParser().parse(jstring);
    root.getAsJsonObject().get("rows")
        .getAsJsonArray().forEach(innerArray -> {
            innerArray.getAsJsonArray().forEach(element -> {
                System.out.println("val equals "+element.getAsJsonObject().get("val"));
                System.out.println("val1 equals "+element.getAsJsonObject().get("val1"));
            });
    });

顯然,除了打印之外,您還可以使用這些解析后的值進行任何操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM