我需要使用Java从jsonnode获取编解码器值。以下是带有父节点和子节点的jsonnode。
{
"DetectedProperties":{
"Bitrate":262610704,
"FrameRate":"24/1",
"FileSize":32827252,
"Height":1080,
"Width":1920,
"DurationMillis":1.0,
"codec":"prores"
}
}
以下代码片段未返回编解码器的值。它总是返回null。
JsonNode videoProperties = getCodecInfo(videoFile);
JsonNode videoInfo = videoProperties.get("DetectedProperties");
log.debug("codec: " + videoInfo.get("codec").toString()); // returns null
如何使用Java从上述json获取编解码器值?
请提供您的输入。
答案 0 :(得分:0)
您可以为此使用json表达式“ / DetectedProperties / codec”。
JsonParser parser = new JsonFactory().createParser(getCodecInfo().toString());
parser.setCodec(new ObjectMapper());
TreeNode tree = parser.readValueAsTree();
System.out.println(tree.at("/DetectedProperties/codec"));