我怎样才能创建一个JSON对象,输出会是这样的?

时间:2017-10-15 03:49:01

标签: java json

我是json的新手,我怎样才能使JSON对象的结构(输出字符串)像这样?我正在使用org.json库。

这是一个json数组是否包含json数组?

我输入的内容如下:

111(root)
----222(child of 111)
--------333(child of 222)
--------444(child of 222)
----123(child of 111)
--------456(child of 123)
--------456(child of 123)

如何使json输出就像打击一样,

{
"name": "flare",
"children": [
    {
        "name": "analytics",
        "children": [
            {
                "name": "cluster",
                "children": [
                    {
                        "name": "AgglomerativeCluster",
                        "value": 3938
                    },
                    {
                        "name": "CommunityStructure",
                        "value": 3812
                    }
                ]
            },
            {
                "name": "graph",
                "children": [
                    {
                        "name": "BetweennessCentrality",
                        "value": 3534
                    },
                    {
                        "name": "LinkDistance",
                        "value": 5731
                    }
                ]
            }
        ]
    },
    {
        "name": "animate",
        "children": [
            {
                "name": "Easing",
                "value": 17010
            },
            {
                "name": "FunctionSequence",
                "value": 5842
            }
        ]
    }
]
}

谢谢你的帮助!

3 个答案:

答案 0 :(得分:1)

您可以更改依赖关系并使用允许对象映射的库(如Jackson),或者您可以手动执行映射,如下所示:

10 & 25 & 25 & 100\\
7 & 56 & 56 & 100\\

答案 1 :(得分:0)

你可以简单地拥有这样的课程。

TD_TOPIC

答案 2 :(得分:0)

这可以通过ObjectMapper的漂亮打印实现。

public String pretty(Object object) throws JsonProcessingException {
  return OBJECT_MAPPER.writerWithDefaultPrettyPrinter().writeValueAsString(object);
}

您可以使用我的库。

<dependency>
    <artifactId>json-utils</artifactId>
    <groupId>org.bitbucket.swattu</groupId>
    <version>1.0.16</version>
</dependency>

new JsonUtil().pretty(object);