Извлечение вложенного JSON в Couchbase lite в Android

#java #android #couchbase

#java #Android #couchbase

Вопрос:

У меня есть вложенный JSON следующим образом, который я хочу сохранить и извлечь из couchbase lite в Android

 {
 "sensor":"12" ,
 "patient":"2",
 "readings": {"5090":"100" ,
              "5092":"100"}
}
  

Я хочу получить значение, соответствующее ключу 5090, из моей базы данных

Я могу получить весь документ в couchbase, используя retrievedDocument.GetProperties() как

 {_rev=1-7881f65efdcd0c119b936d4d3a734d42, sensor=12, readings={5090=100, 5092=100}, patient=2, _id=6482cee3-4267-459e-8039-860dbb5d1318}
  

Я также могу получить вложенный json, соответствующий ключу «readings», с помощью
retrievedDocument.getProperty(«readings») как

 {5090=100, 5092=100}
  

теперь мне нужно получить значение (100), соответствующее вложенному ключу 5090 (внутри показаний)

Я попытался следовать в Java

 retrievedDocument.getProperty("readings['5090']")
retrievedDocument.getProperty("readings["5090"]")
retrievedDocument.getProperty("readings.5090")
retrievedDocument.getProperty("readings[5090]")
  

но все они возвращают null

Ответ №1:

Попробуйте

 retrievedDocument.getProperty("readings").getProperty("5090");
  

Ответ №2:

Теперь я решил свою проблему, используя следующее:

 ((Map) retrievedDocument.getProperty("readings")).get("5090"))