gpt4 book ai didi

Java-获取多个JSON值并将其转换为字符串

转载 作者:行者123 更新时间:2023-12-01 20:22:21 24 4
gpt4 key购买 nike

如何获取所有“名称”值并将它们转换为字符串?例如,如果我执行以下操作:

System.out.println(value[1]);

它将打印出name1
这是我到目前为止所拥有的:

JSON:

[
{
"name":"name1"
},
{
"name":"name2",
"changedToAt":1470659096000
},
{
"name":"name3",
"changedToAt":1473435817000
}
]

Java代码:

try {
String UUID = p.getUniqueId().toString();
String slimUUID = UUID.replace("-", "");
InputStream in = new URL("https://api.mojang.com/user/profiles/" + slimUUID + "/names").openStream();

String json = IOUtils.toString(in);
IOUtils.closeQuietly(in);

try {
JSONParser parser = new JSONParser();
JSONObject jsonparse = (JSONObject) parser.parse(json);
//get "name" values and turn into String
} catch (ParseException e) {
System.out.println(e.getMessage());
}

} catch (IOException e) {
System.out.println(e.getMessage());
}
}

最佳答案

您需要迭代数组并将所有 name 值累积到字符串数组中。

下面是工作源代码:

JsonArray jsonObject = new JsonParser()
.parse(json)
.getAsJsonArray();

List<String> names = new ArrayList<>();
for (JsonElement jsonElement : jsonObject) {
names.add(jsonElement.getAsJsonObject().get("name").getAsString());
}

//now you can use as you wish, by index
System.out.println(names.get(1));//returns "name2"

关于Java-获取多个JSON值并将其转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44477288/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com