从Json文件中仅获取特定数据

时间:2018-11-08 14:59:35

标签: java json

String sUrl = "my_url.com";
URL url = new URL(sUrl);
URLConnection request = url.openConnection();
request.connect();

JsonParser jp = new JsonParser(); //from gson
JsonElement root = jp.parse(new InputStreamReader((InputStream) request.getContent())); //Convert the input stream to a json element
JsonObject rootobj = root.getAsJsonObject();
System.out.println("JSON$$$$$$$$$$$ " + rootobj.get("data"));

我的输出是这样的:

{
  "data" : [ {
    "i" : "#######",
    "d" : "#######",
    "values" : {
      "Json" : "[ {    "a": "******",     "b": "*******",     "c": "*****"}]"

但是我希望我的输出像这样:

[ { "a": "******", "b": "*******", "c": "*****"}]

我要删除上述内容。如何从数据中调用JSON?

2 个答案:

答案 0 :(得分:0)

System.out.println(“ JSON $$$$$$$$$$$” + rootobj.get(“ data”)[2] .json);

答案 1 :(得分:0)

正如@ADyson所说,您必须对待Json对象,因为它是树结构。因此,您必须“导航” Json对象。

在这种情况下为:

rootobj.get("data").getAsJsonArray().get(0).getAsJsonObject().get("values").getAsJsonObject().get("Json").getAsJsonArray()

如果您对Json的写得很好...以及您想要得到的东西...

问候