在 Java 中,如何提取以下 JSON 输出中“数据”部分的数据?
{"getuserhashrate":{"data":1425,"runtime":8.2659721374512,"version":"1.0.0"}}
json.get("data") 不起作用并给出以下错误:
Exception in thread "main" org.json.JSONException: JSONObject["data"] not found. at org.json.JSONObject.get(JSONObject.java:454) at so4308554.JsonReader.main(JsonReader.java:40)
最佳答案
您有一个 JSON 对象。它仅包含一个字段:getuserhashrate
{"getuserhashrate": ... }
该字段包含另一个 JSON 对象,该对象有自己的字段(“数据”、“运行时”等)。
{"data":1425,"runtime":8.2659721374512, .. }
从堆栈跟踪来看,您正在使用基本的 json.org library (或 Android SDK )。
您可以通过以下方式解析 JSON 并返回顶级对象:
JSONObject root = new JSONObject(myJsonString);
然后您将获得 getuserhashrate
字段中包含的对象:
JSONObject data = root.getJSONObject("getuserhashrate");
现在您可以访问该对象的字段。
关于java - 如何从 JSON 输出字符串中提取各个数据片段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21840802/