我一直在寻找转换普通String而不是Array的方法,而且我陷入了自己的代码中。我已经编写了一个API,可以将以下json返回给我

[{
    "Id": "6d052279342d66d1ae4d4a84da0f98b80313277a3faeca4d7e822076c9dd4316",
    "Names": ["/elegant_bartik"],
    "Image": "alpine",
    "ImageID": "sha256:3fd9065eaf02feaf94d68376da52541925650b81698c53c6824d92ff63f98353",
    "Command": "/bin/sh",
    "Created": 1525954440,
    "Ports": [],
    "Labels": {},
    "State": "running",
    "Status": "Up About an hour",
    "HostConfig": {
        "NetworkMode": "default"
    },
    "NetworkSettings": {
        "Networks": {
            "bridge": {
                "IPAMConfig": null,
                "Links": null,
                "Aliases": null,
                "NetworkID": "430ff6d43b361b0a2f45046c575862ca4785216a0242e72d145c269f3ef326df",
                "EndpointID": "a7a2012d7841af6b5b76e24f57b13a5057252b511e8dbfb48e74aa1cc19e30b4",
                "Gateway": "172.17.0.1",
                "IPAddress": "172.17.0.2",
                "IPPrefixLen": 16,
                "IPv6Gateway": "",
                "GlobalIPv6Address": "",
                "GlobalIPv6PrefixLen": 0,
                "MacAddress": "02:42:ac:11:00:02",
                "DriverOpts": null
            }
        }
    },
    "Mounts": []
}]


问题是,我需要将其放入JSONObject中,是否有任何功能或功能序列可以做到这一点?还是我需要打破整个字符串?

我已经尝试了JSONParse,Gson(来自Google)和其他很多工具,但是没有一个能用。

谢谢!

最佳答案

您发布的JSON是一个包含单个对象(以[]表示)的数组(以{}表示)

首先,您需要将JSON解析为一个数组,例如(使用GSON):

JsonArray arr = new Gson().fromJson(string, JsonArray.class)


然后,您可以访问数组中的第一个对象:

JsonElement ele = arr.get(0);

09-12 15:33