【发布时间】:2020-08-09 03:55:40
【问题描述】:
我有以下代码用于从 URL 下载 JSON 文件:
static void getPost() throws Exception {
String webPage = "https://www.reddit.com/r/arabfunny/top.json?limit=100";
URL url = new URL(webPage);
URLConnection request = url.openConnection();
request.setRequestProperty("Content-Type", "application/json; utf-8");
request.setRequestProperty("User-Agent", "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2");
JsonParser jp = new JsonParser();
JsonElement root = jp.parse(new InputStreamReader((InputStream) request.getContent()));
JsonObject rootobj = root.getAsJsonObject();
String imageURL = rootobj.get("data").toString();
System.out.println(imageURL);
}
这可以正确获取代码,但我无法获取超过第一级的数据,我可以使用 .get("data") 并且按预期工作,但我无法使用 .get("data").get("children")。
可以在here找到JSON文件。
这里是漂亮的 JSON。
我想得到一个随机的孩子,我不知道孩子的数量。类似rootobj.get("data").get("children").get(RANDOM).toString();
编辑:
我真的只需要一个简单的解决方案来从随机孩子那里获取一些参数。
我需要获取 JSON -> 数据 -> 子项[随机项] -> 数据 -> subreddrit(或其他最终字段)
谁能给我一个基本的工作示例,它会给我任何最终值,然后我可以修改?
【问题讨论】: