JsonNode解析json字串
阿新 • • 發佈:2021-01-23
JsonNode解析json字串獲取指定欄位
字串如下:
{ "code":"0", "msg":"成功", "result":{ "fullStreamUrl":"rtmp://rtmpxxx/x/x", "audioTrack":[ { "audioTrackIndex":1, "streamUrl":"rtmp://rtmpxxx/x/x-1" }, { "audioTrackIndex":3, "streamUrl":"rtmp://rtmpxxx/x/x-3" } ] }, "ok":true }
獲取result中的fullStreamUrl,audioTrack兩個欄位資訊,程式碼如下:
xxx代表上面字串
ObjectMapper objectMapper = new ObjectMapper();
try {
JsonNode jsonNode = objectMapper.readTree(xxx);
String fullStreamUrl = jsonNode.path("result").path("fullStreamUrl").asText();
System. out.println("----------------->>>>fullStreamUrl:"+fullStreamUrl);
//取audioTrack節點下資訊要根據子節點audioTrackIndex來獲取,用list接收即可取到
List<JsonNode> findKeys = jsonNode.findParents("audioTrackIndex");
String findKeys1 = jsonNode.path("result" ).path("audioTrack").toString();
for (JsonNode jn : findKeys) {
System.out.println("----------------->>>>:"+jn);
System.out.println("------------->>>:"+jn.get("audioTrackIndex").asText());
System.out.println("------------->>>:"+jn.get("streamUrl").asText());
}
} catch (IOException e) {
e.printStackTrace();
}
結果如下:
每天進步一點點…