JSON和Java:我存储了一个long。我想得到长的。但是:"org.json.JSONException: JSONObject is not a long"。怎么了?
JSON and Java: I store a long. I want to get the long. But: "org.json.JSONException: JSONObject is not a long". What's wrong?
当我尝试进行以下操作时(使用 org.json):
JSONObject jo = new JSONObject();
jo.append("theLong", 1l);
Long theLong = jo.getLong("theLong");
我得到异常:
org.json.JSONException: JSONObject["theLong"] is not a long.
[...]
Caused by: java.lang.NumberFormatException: For input string: "[1]"
我做错了什么?
备注:
同样不必要地将长的 jo.append("theLong", new Long(1l));
装箱(以确保传递的是 Long
,而不是 long
)也无济于事。
你应该使用 jo.put("theLong", 1l);
append
用于“将值附加到键下的数组。如果键不存在于 JSONObject 中,则将键放入 JSONObject 中,其值为包含值的 JSONArray参数。如果键已经与 JSONArray 相关联,则将值参数附加到它。"
当我尝试进行以下操作时(使用 org.json):
JSONObject jo = new JSONObject();
jo.append("theLong", 1l);
Long theLong = jo.getLong("theLong");
我得到异常:
org.json.JSONException: JSONObject["theLong"] is not a long.
[...]
Caused by: java.lang.NumberFormatException: For input string: "[1]"
我做错了什么?
备注:
同样不必要地将长的 jo.append("theLong", new Long(1l));
装箱(以确保传递的是 Long
,而不是 long
)也无济于事。
你应该使用 jo.put("theLong", 1l);
append
用于“将值附加到键下的数组。如果键不存在于 JSONObject 中,则将键放入 JSONObject 中,其值为包含值的 JSONArray参数。如果键已经与 JSONArray 相关联,则将值参数附加到它。"