Json没有在Android中解析的关键

时间:2012-11-06 11:54:06

标签: android json web-services

我在Json下面有这个,我是从.Net Web服务获得的:

[["Developer","test","developer@test.com"]]

我用jsonlint验证器进行了检查,它显示了上面的json罚款。

因为它没有任何key我不知道如何在Android中解析它。 有人可以帮我解决如何在没有密钥的情况下解析这个json。

如果它有钥匙,我会尝试这个:

{"first":"somevalue","last":"someothervalue"} // Json response

JSONObject json_obj = new JSONObject(resp); //response is the json array
String first = json_obj.getString("first");
String last = json_obj.getString("last");
String test = "Hello! " + first + " " + last; 

希望有人帮助:)

此致

普利文

我的解决方案

JSONArray respo = new JSONArray(resp); //resp is Json Array
respo = respo.getJSONArray(0);
String test = respo.getString(2);
test = "Your Email Address is " + test;

2 个答案:

答案 0 :(得分:7)

Android(Java)中的

解析此行看起来像:

String jsonString="[[\"Developer\",\"test\",\"developer@test.com\"]]";
try {
   JSONArray jsonArray=new JSONArray(jsonString);
   JSONArray jsonArray2=jsonArray.getJSONArray(0);

   for (int i = 0; i < jsonArray2.length(); i++) {
     String valueString=jsonArray2.getString(i);
     Log.e("json", i+"="+valueString);
   }
} catch (JSONException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
}

答案 1 :(得分:2)

使用JSONArray而不是JSONObject。然后使用getJSONArray()函数获取数组中的数组。之后,您可以使用索引和getString()访问所有值。