【发布时间】:2013-12-26 16:12:08
【问题描述】:
我在解析 JSON 时遇到了问题,我陷入了一种特殊情况。 我正在尝试获取 JSON arrat“详细信息”下的所有值,但它给了我一个错误,说 JSONObject 无法转换为 JSONArray
{
"response": "true",
"errors": "<span>Success</span>",
"details": {
"sid": "15",
"pid": "1",
"user_email": "chardalvarez@gmail.com",
这是我已经完成的:
String json = mParser.makeHttpRequest(API_REGISTER, "POST", params);
Log.d("Registration Return: ", json);
try {
JSONObject jObj = new JSONObject(json);
if (jObj != null) {
mDetails = jObj.getJSONArray("details");
if (mDetails != null) {
for (int i = 0; i < mDetails.length(); i++) {
JSONObject c = mDetails.getJSONObject(i);
mPid = c.getString("sid");
mSid = c.getString("pid");
mUserEmail = c.getString("user_email");
但我仍然遇到同样的错误。我的代码做错了吗?我还使用JSONLINT 检查了我的 JSON,认为它是无效的 JSON,但它说的是有效的 JSON。非常感谢您的帮助。
【问题讨论】:
-
details是 JSONObject 而不是 JSONArray 所以使用jObj.getJSONObject("details");来获取 JSONObject 的详细信息