Ich benutze Jackson, um einige JSON zu analysieren. Ein Ausschnitt aus diesem json ist wie folgt:Get Feldname von JsonNode
},
"1/1/0": {
"event": "status",
"name": "Alarm Status",
"type": "Alarm",
"location": "Hall"
},
"1/1/1": {
"event": "status",
"name": "Smoke Alarm Status",
"type": "Alarm",
"location": "Hall"
},
ich gerne die Daten für jedes ‚Objekt‘ zu extrahieren geschafft haben, aber ich bin kämpfen, um den ‚name‘ für jedes Objekt zu erhalten. Im obigen Beispiel wäre dies "1/1/0" und "1/1/1". Ich tue dies auf folgende Weise:
final JsonNode node = parser.parseToNode(configJson);
final JsonNode sensorsChild = node.get("sensors");
for (JsonNode root : sensorsChild) {
final String event = root.get("event").asText();
final String name = root.get("name").asText();
final String type = root.get("type").asText();
final String location = root.get("location").asText();
}
möchte ich eine weitere Zeile in der die for-Schleife, die wie etwas ist:
final String id = root.getNodeFieldName();
die '1/1/0' ergeben würde und ‚1/1/1 'jeweils. Danke
können Sie Ihren kompletten JSON posten? –
@DerickDaniel kann ich leider nicht, da es 1000s Zeilen lang ist, aber das Snippet sollte einen guten Hinweis darauf geben, womit ich es zu tun habe. – Joe
Hilft das? http://stackoverflow.com/questions/7653813/jackson-json-get-node-name-from-json-tree – Tomalak