簡體   English   中英

Android-如何從JSON字符串中提取嵌套值

[英]Android - How to extract nested value from JSON string

這是我從JSON文件中收集的String。 符合預期:

{
   "catalog":{
      "book":{
         "id":"bk101",
         "author":"Gambardella, Matthew",
         "title":"XML Developer's Guide",
         "genre":"Computer",
         "price":"44.95",
         "publish_date":"2000-10-01",
         "description":"An in-depth look at creating applications with XML."
      }
   }
}

使用此字符串,我創建了一個JSONObject。

JSONObject jsonBook = new JSONObject(sb.toString());

然后,我只是嘗試提取一些在字符串中看到的參數,例如id和author。

"id": "bk101"`  `"author": "Gambardella, Matthew" 

這是我的方法

book.setAuthor(jsonBook.getString(Book.AUTHOR));
book.setId(jsonBook.getString(Book.ID));

但是我不斷收到錯誤消息,說id / author沒有價值,以先到者為准。 有任何想法嗎?

干杯

那是因為idauthor都在書里面,而不是json根里面

JSONObject jsonBook = new JSONObject(sb.toString());
JSONObject catalogue = jsonBook.getJSONObject("catalog");
JSONObject jbook = catalogue.getJSONObject("book");

book.setAuthor(jbook.getString(Book.AUTHOR));
book.setId(jbook.getString(Book.ID));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM