在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/Java  Android/ android中樹(shù)形json解析成對(duì)象

android中樹(shù)形json解析成對(duì)象

[
    {
        "name": "a",
        "size": "4",
        "Rate": "4",
        "level": "3",
        "children": [
            {
                "name": "aa",
                "size": "8",
                "Rate": "8",
                "level": "4",
                "children": [
                    {
                        "name": "aaa",
                        "size": "8",
                        "Rate": "8",
                        "level": "5"
                    }
                ]
            }
        ]
    },
    {
        "name": "b",
        "size": "4",
        "Rate": "4",
        "level": "3",
        "children": [
            {
                "name": "bb",
                "size": "8",
                "Rate": "8",
                "level": "4",
                "children": [
                    {
                        "name": "bbb",
                        "size": "8",
                        "Rate": "8",
                        "level": "5"
                    }
                ]
            }
        ]
    }
 ]

類(lèi)似于這種的json數(shù)據(jù)格式,不確定具體有多少children,

我定義的bean樣式

public class bean{
    private String name;
    private String size;
    private String Rate;
    private String level;
    private List<bean> children;
    ...
    get/set方法
}

利用fastjson解析

String json="json數(shù)據(jù)";
List<Bean> list=JSON.parseArray(json, Bean.class)

這樣list.size()=0

這樣的樹(shù)形json如何解析?

回答
編輯回答
孤慣

JSONObject,JSONArray 就夠了。

2017年12月8日 14:59
編輯回答
淡墨

你list中的bean再重新寫(xiě)一個(gè),不要使用你外層的bean就可以了

2018年9月22日 02:39
編輯回答
影魅

先轉(zhuǎn)出固定數(shù)目的JSONObject 不確定部分再轉(zhuǎn)成JSONArray

2017年10月31日 11:14
編輯回答
蝶戀花

再遞歸遍歷list中的bean是否有children節(jié)點(diǎn),放到一個(gè)新的list中就可以取出來(lái)了。

2018年6月2日 16:25
編輯回答
陪我終

換Kotlin

2017年11月5日 18:24
編輯回答
雨蝶

是用retrofit+rxjava出現(xiàn)這個(gè)問(wèn)題的嗎?

2018年5月22日 16:37
編輯回答
真難過(guò)

用自帶的JSONObject就可以了

2018年3月19日 11:53
編輯回答
乖乖瀦

確實(shí)是比較特殊的一種情況,我相信樓主應(yīng)該也不是就這三層的結(jié)構(gòu)。我之前在做組織組織架構(gòu)的時(shí)候也遇到類(lèi)似的數(shù)據(jù),我json的數(shù)據(jù)是沒(méi)有轉(zhuǎn)成JavaBean的。使用數(shù)據(jù)的時(shí)候采用的是遞歸的方式。我用Android studio的gson format插件格式化了樓主的數(shù)據(jù),發(fā)現(xiàn)gson format 每一層都幫我新建了一個(gè)JavaBean(醉了)。如果樓主想從這個(gè)數(shù)據(jù)里面只是拿到一個(gè)總的人員列表,那就得到數(shù)據(jù)的時(shí)候手動(dòng)遞歸取出所有數(shù)據(jù)吧!

2017年12月25日 21:49