1

我在 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;
4

2 回答 2

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();
}
于 2012-11-06T12:32:57.933 回答
2

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

于 2012-11-06T12:29:01.793 回答